在C语言中 '\0' 和 '\n' 都是什么意思?

我们如何使用'\0'来结束输入一段字符,在输入的字符的末尾,有什么占字节的东西吗

转义字符。
(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不会输出。追问

那如果我们想输一个字符串和一个字符,用空格分开该怎么写?

追答

如果想同时往一个字符数组里面存储一个单词然后空格再放一个字母,这样的话你可以用gets()函数。这个函数可以接受空格,只把回车当做结束的按键标识。
scanf和%s以及%c都是无法接受空格的。

如果你是想一个字符数组存储一句话,然后再用一个变量存放一个字母,这样你可以随便用scanf或者gets函数。

追问

我的意思是我要输入一个字符数组,以空格结束,再输入一个字符。entry结束输入,怎么写?

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-04-23

n+1中的n指的是每工作1年支付1个月工资的经济补偿。所谓的+1,是指用人单位解除劳动合同但是未提前30天书面通知劳动者时,额外支付的1个月工资。

第2个回答  2012-10-28
'\0'是使用在字符串的最后,表示字符串的结束。而'\n'是换行符,它是转义序列的一种,转义序列还包括响铃符'\a',回退符'\b',水平制表符'\t'等等追问

那哦么如何使用 '\0' 来结束输入一段字符

追答

一般字符串最后自动的会有'\0'来标志字符串的结束。
比如我们使用strcpy函数拷贝一个字符串,这样的话,字符串后面就会自动添加有'\0'。
而如果是逐个赋值,就要自己手动的添加一个'\0'来完成一个字符串。比如:
char s[50];
s[0]=‘a’;s[1]=‘b’; s[3]=‘\0';

第3个回答  2012-10-28
'\0'表示ASCII编号为0的字符,在C语言中最常用于代表字符串结束的标志。
'\n'表示ASCII编号为13的字符,代表回车键,输出这个字符就会换一行。
'\0'作为字符串的结束标志,本身会占用一个字符。所以要存一个最长5个字节的字符串,至少要有6个字节来存放,即char str[6]。
第4个回答  2012-10-28
\0'字符串结束的标志。
'\n'代表回车键,输出这个字符就会换一行。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网