小弟最近编程,碰到个char[]和CString的问题:char a[]="no";
CString b="File";现在想要得到一个新的c, 使得 c="noFile",请问该怎么办?另外,希望哪位高手能指点一下到底CString和string和char[]的区别
在哪里?怎么进行交叉操作?谢谢!

解决方案 »

  1.   

    char a[]="no";
    CString b="File";
    char c[10];
    ===============
    1.   strcpy(c,a);
         strcat(c,b);
    ===============
    2.   sprintf(c,"%s%s",a,b);
      

  2.   

    用函数 stprintf(目的字串,选项,变量)

    sprintf (c,"%s%s",a,b);
      

  3.   

    对论坛中有关数据类型转换的总结
    http://dev.csdn.net/develop/article/12/12365.shtm
      

  4.   

    char a[]="no";
    CString b="File";现在想要得到一个新的c, 使得 c="noFile",请问该怎么办?
    ==你没有说c的类型
    用sprintf可以。如果c是CString类型,可以用该类的Format函数
      

  5.   

    1.CString是mfc中的字符串操作类
    2.string是标准c++中的字符串操作类,使用时需要在文件头添加
    #include <string>
    using namespace std;
    3.char[] 是c中的字符数组http://www.evget.com/articles/evget_782.html
      

  6.   

    :)))) 呵呵 FAQ也应该有把。
      

  7.   

    CString str1;
    string str2;
    char str3[];string->CString
    str1 = str2.c_str();CString->char[]
    strcpy(str3, str1);char[]->CString
    str1 = str3;
      

  8.   

    memcpy(c,a,strlen(a));
    memcpy(c+strlen(a),(LPSTR)(LPCTSTR)b,b.GetLength());有点bt!
      

  9.   

    我来!!
    char a[]="no";
    CString b="File";
    char *buf;
    buf = (LPSTR)(LPCTSTR)b; 
    strcat(a,buf);
      

  10.   

    严重同意: goodboyws(深夜不眠者) 的写法。