我在vs2013中,定义一个字符串
char a=“abc”;
为什么不能这样定义呢?我印象中以前我也这么定义过啊;谢谢
字符串不是c语言的基本数据类型,字符串是用字符数组实现
所以定义字符串应该这样
char a[] = "abc";或者const char * a = "abc";
C++里可以用string这个字符串类,MFC可以使用CString类
string a = "abc";
CString a = "abc";
所以定义字符串应该这样
char a[] = "abc";或者const char * a = "abc";
C++里可以用string这个字符串类,MFC可以使用CString类
string a = "abc";
CString a = "abc";
温馨提示:答案为网友推荐,仅供参考
第1个回答 2015-11-08
char a 在内存中占用1字节; 而"abc"需要占用四个字节,当然不能那么定义了。
应该这样定义:
char a[4] = "abc";
应该这样定义:
char a[4] = "abc";
第2个回答 2015-11-08
定义字符串要用char *a="abc";
char是单个字符。
char是单个字符。
第3个回答 2015-11-08
char a是字符,你以前定义是 char a[] = "abc" 或者 string a = "abc"吧?