cPath = "7777.dat";
     ExtractFeature((char*)(LPCSTR)("abc.wav"),(char*)(LPCSTR)(cPath));
     
     void ExtractFeature(char*InFln, char*OutFln)
     {
         为什么InFln拿到了全部的文件名而OutFln只读到了第一个字符
     }怎么改下?  急~~~~~~~~

解决方案 »

  1.   

    为什么要强制转换(LPCSTR)?
    这样在函数内部也都可以传递进来的 没错.InFln="abc.wav";
    cPath = "7777.dat"; 
      

  2.   

    cPath是什么类型?(char*)(LPCSTR)(cPath)需要这样强制转换?((char*)(LPCSTR)("abc.wav")  这个为什么要这样转换?
      

  3.   


    #include "stdafx.h"
    #include "stdio.h"void ExtractFeature(char*InFln, char*OutFln) 
        { 
            printf("%s\n %s",InFln,OutFln); 
        } 
    int main(int argc, char* argv[])
    {
    char* cPath = "7777.dat"; 
        ExtractFeature((char*)("abc.wav"),(char*)(cPath)); 
        
    return 0;
    }
      

  4.   

    TCHAR* cPath = new TCHAR[10];
      

  5.   

            CString c_path;
    c_path.Format(_T("/My Documents/Personal/%s.dat"),m_name);
    TCHAR* cPath = new TCHAR[10];
    cPath = c_path.GetBuffer(c_path.GetLength());
    c_path.ReleaseBuffer();
    ExtractFeature((char*)(LPCSTR)("/My Documents/Personal/20095821117.wav"),(char*)(LPCSTR)(cPath)); void ExtractFeature(char*InFln, char*OutFln) 
        { 
        } 这个是全部代码  环境是vs2008的wince模拟器  我改过char* 但问题更多  
    改来改去改不对 麻烦各位帮我改下