第2个回答 2012-10-28
转义字符。
(1)\0其实就是0,字符串存入字符数组的时候最后一个字符作为字符串的结尾。告诉计算机,这个字符串结束了。
(2)\n是回车换行,挺长用的。
比如:
printf("%d\n",a);就会输出a的值以后,自动换行。
putchar('\n');输出一个回车。
其它的你可以了解一下\t,相当于一个很大的空格。
根据你的补充提问:
\0是字符串才有的转义字符,字符是没有的。而且\0是你输入完这句话(你肯定会按回车确定,这时候系统就知道你输入完了这句话)系统自动加上的。
比如你对一个字符数组进行初始化(数组可初始化但不可赋值):
字符:char a[5]={'c','h','i','n','a'};
字符串:char a[6]={'c','h','i','n','a','\0'};
即使你不输入\0也要给它留出空间来,否则数组会越界。
最经常用的输入输出字符串的函数就是gets和puts(或者scanf("%s",str);等)。
gets(str);之后你按回车,系统会自动在这个数组对应下标的那个位置加一个\0,不需要手动。
puts(str);也是以\0作为结束标志,但是\0不会输出。