在C语言中输出时:空格符与空字符有什么区别?
答案:5 悬赏:70
解决时间 2021-02-10 09:25
- 提问者网友:傲气稳全场
- 2021-02-10 04:28
在C语言中输出时:空格符与空字符有什么区别?
最佳答案
- 二级知识专家网友:情战辞言
- 2021-02-10 04:46
1、字符不同
空格符和空字符是不一样的,在ASCII里面,空格(space)符号的ASCII码是32,而空字符是0,2个是完全不一样的2个字符。
2、作用不同
空字符一般来描述一个字符串的结尾,其实是控制符的一种,但不能理解为没有字符,应该理解为代表什么都没有的字符.好比回车0x0A和换行0x0D虽然不显示,但是也是控制字符的一种.(这些字符以前是用于打印机的,所以很多都没有用了)。
'\0'是一个“空操作”字符,它不做任何操作,只是一个标志。'\0'的代码值为0,它不计入串的长度。
3、显示方式不同
输出空格在屏幕上显示的是空格。但是输出空字符就没有显示。因为空字符是作为一个字符串的结束标志。换行(\n,ascii码:10)就是光标下移一行却不会移到这一行的开头,回车(\r,ascii码:13)就是回到当前行的开头却不向下移一行。
Enter键按下后会执行\n\r这样就是我们看到的一般意义的回车了,所以你用16进制文件查看方式看一个文本,就会在行尾发现"\n\r"。Tab(\t,ascii码:9)是制表符,作用是预留8个字符的显示宽度,用于对齐。
参考资料来源:百度百科—空字符串
参考资料来源:百度百科—空格符
空格符和空字符是不一样的,在ASCII里面,空格(space)符号的ASCII码是32,而空字符是0,2个是完全不一样的2个字符。
2、作用不同
空字符一般来描述一个字符串的结尾,其实是控制符的一种,但不能理解为没有字符,应该理解为代表什么都没有的字符.好比回车0x0A和换行0x0D虽然不显示,但是也是控制字符的一种.(这些字符以前是用于打印机的,所以很多都没有用了)。
'\0'是一个“空操作”字符,它不做任何操作,只是一个标志。'\0'的代码值为0,它不计入串的长度。
3、显示方式不同
输出空格在屏幕上显示的是空格。但是输出空字符就没有显示。因为空字符是作为一个字符串的结束标志。换行(\n,ascii码:10)就是光标下移一行却不会移到这一行的开头,回车(\r,ascii码:13)就是回到当前行的开头却不向下移一行。
Enter键按下后会执行\n\r这样就是我们看到的一般意义的回车了,所以你用16进制文件查看方式看一个文本,就会在行尾发现"\n\r"。Tab(\t,ascii码:9)是制表符,作用是预留8个字符的显示宽度,用于对齐。
参考资料来源:百度百科—空字符串
参考资料来源:百度百科—空格符
全部回答
- 1楼网友:安稳不如野
- 2021-02-10 08:47
空格符 ASCII 码 0x20
空字符 ASCII 码 0x00
- 2楼网友:浪者不回头
- 2021-02-10 07:47
空格是有ASC值的,输出时占输入出位,如果你按数值输出一个空格的字符变量的话就会看到它的ASC码值。而空值的含义就是空的。
- 3楼网友:青春如此荒謬
- 2021-02-10 06:11
空格字符是编码为32的一个字符,用' '表示(注意两个单引号之间有空位),显示出来是一个空白。比如“a b”,在a和b之间就是一个空格字符。
换行符是编码为10的一个字符,用'\n'表示(注意\n不能拆开),没有显示的含义,只有控制含义,控制后面的显示内容从下一行开始。
以上是他们的不同之处。相同之处则是他们都是不可见的,他们都统称为空白字符。
- 4楼网友:嗷呜我不好爱
- 2021-02-10 05:35
1. 它们的关系就像 空气 和 真空 的区别;虽然都看不见,但是空气是存在的,真空却是什么都没有。
2. 空格符是存在的字符,只不过是打印了,看不见而已,ASCII是32。如果一连串的字符输出,就可以看到之间的空格区域了(就如同有风时,就可以感受到空气流动)。
3. 空字符就是什么都没有。连打印都不用。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯