#include<stdio.h> //字符数组的几种初始化方法 /* void main() { char a[100]={'0'}; //将a[0]设为0,后续ASCII码为0,即字符串结束符 //不如后法,但有些场合更好 printf("%s",a); } */ /* void main() { char a[100]={'/0'}; //ASCII码均为0,个人认为这样较好 printf("%s",a); }*/ void main() { char a[3]={'/0'}; a[0]='a',a[1]='b',a[2]='c'; //并未分配a[3]及以后的存储空间,但由前面a可索引至它 //调试时可以Watch到a[3]中存储的ASCII码的十进制为-52,a[4]中为-64 //这个值是VC编译器默认给定还是随机生成的? //总之,对输出有影响 printf("%s",a); } /* void main() { char a[4]={'/0'}; a[0]='a',a[1]='b',a[2]='c'; printf("%s",a); //输出字符串(%s)时是要判断最后一个是否为'/0'的 //刚好留了一个位置存'/0'不会影响输出 } */