在CI的时候,会发生什么添加字符做这样的事情:与空终结串用C
char buf[50]="";
c = fgetc(file);
buf[strlen(buf)] = c+'\0';
buf[0] = '\0';
我用了一个循环的一些代码,这和我在buf中发现旧值 我只是想添加C到BUF
我知道我可以这样做:
char s=[5];
s[0]=c;
s[1]='\0';
strcat(buf, s);
为char添加到BUF,但我想知道为什么上面的代码是行不通的。
需要注意的是'C +'\ 0''只是'C'。它不会将* 2 *元素写入数组。 –
'buf [0] ='\ 0';''将'buf'重置为空字符串('“”')。 – BLUEPIXY
[示例代码](http://ideone.com/qe5ogw) – BLUEPIXY