C语言 | 空白符(空格制表符与换行符)浅析
Posted Neutionwei
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言 | 空白符(空格制表符与换行符)浅析相关的知识,希望对你有一定的参考价值。
空格、制表符、换行符等统称为空白符(space character),它们只用来占位,并没有实际的内容,也显示不出具体的字符。
制表符分为水平制表符和垂直制表符,它们的 ASCII 编码值分别是 9 和 11。
- 垂直制表符在现代计算机中基本不再使用,没法在键盘上直接输入,它已经被换行符取代。
- 水平制表符相当于四个空格,对于大部分编辑器,按下 Tab 键默认就是输入一个水平制表符;如果你进行了个性化设置,按下 Tab 键也可能会输入四个或者两个空格。
对于编译器,有的空白符会被忽略,有的却不能。请看下面几种 puts 的写法:
#include<stdio.h>
int main()
puts("neution");
puts("wei");
puts
("neutionwei");
puts
(
"neutionwei"
)
;
puts ("neutionwei");
puts ( "neutionwei" ) ;
return 0;
运行结果:
neution
wei
neutionwei
neutionwei
neutionwei
neutionwei
看到输出结果,说明代码没有错误,以上几种 puts 的用法是正确的。puts
和()
之间、" "
和()
之间可以有任意的空白符,它们会被编译器忽略,编译器不认为它们是代码的一部分,它们的存在只是在编辑器中呈现一定的格式,让程序员阅读方便。
需要注意的是,由" "
包围起来的字符串中的空白符不会被忽略,它们会被原样输出到控制台上;并且字符串中间不能换行,否则会产生编译错误。请看下面的代码:
#include<stdio.h>
int main()
puts("neu tion wei");
puts("neution
wei");
return 0;
编译结果:
puts.c: In function ‘main’:
puts.c:6:10: warning: missing terminating " character
puts("neution
^
puts.c:6:5: error: missing terminating " character
puts("neution
^
puts.c:7:8: warning: missing terminating " character
wei");
^
puts.c:7:5: error: missing terminating " character
wei");
^
puts.c:7:5: error: ‘wei’ undeclared (first use in this function)
puts.c:7:5: note: each undeclared identifier is reported only once for each function it appears in
puts.c:8:5: error: expected ‘)’ before ‘return’
return 0;
^
puts.c:9:1: error: expected ‘;’ before ‘’ token
^
第 6~7 行代码是错误的,字符串必须在一行内结束,不能换行。把这两行代码删除,运行结果为:
neu tion wei
以上是关于C语言 | 空白符(空格制表符与换行符)浅析的主要内容,如果未能解决你的问题,请参考以下文章