首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

char数组的有关问题

2013-04-20 
char数组的问题char buffer[2048]\0这里的\0是什么意思还有如何将buffer数组中的某个值,如buffer[30

char数组的问题
char buffer[2048]="\0";
这里的"\0"是什么意思

还有如何将buffer数组中的某个值,如buffer[30]这个值转换为CString?
[解决办法]
"\0"跟"a"类似,一个字符串而已,只不过前者1个字节,后者2个字节
CString str;
str.Format(_T("%c"),buffer[30]);
[解决办法]
char buffer[2048]="\0";


如果这句话是想初始化成空字符串 是不妥的。

最好用memset初始化。
[解决办法]
char buffer[2048]="\0";
这里的"\0"是什么意思
---------------------------------------
实际上就是初始化为空,你可以试一下嘛
char buffer[2048]="\0";
char buffer1[2048]=;
然后随机取buffer 和buffer1任意一个元素,比对一下就OK了

但是这种写法看起来很别扭,一般使用char buffer[2048]={0}这种形式,或者memset(个人以为使用memset纯属多此一举)

还有如何将buffer数组中的某个值,如buffer[30]这个值转换为CString?
------------------------
使用Format(_T("%c"),buffer[30]); 才是正解

CString s = buffer[30] 这种情况应该编都编译不过的吧?
s = &buffer[30] 这样在语法上才是可行的,不过就不是LZ要的那个意思了

热点排行