转义字符
关于三字母词
“三字母词”来源于ANSI C中,它还有一个名字“三联符序列”。说这个之前,我们大家肯定对C语言中的转义序列比较了解了,比如 用n代替回车,用r代替换行,用插入 等等。
其实“三字母词”跟这个意思差不多,在以前的老式键盘中,类似“ [ ] { } ^| "等符号是没有的,当时为了解决这个问题,C语言中出现了所谓的“三字母词”,也就是在代码编译阶段用三个字符代替这些没有的符号,一共有9个,如下表所示:
三字母词是ANSI C定义的,不过现在很多编译器都不需要这个转义功能了,因为现在的键盘可以直接敲出这些字符,所以说你把它当成C语言的一个知识点去了解就行了。
关于注释的/* */
/**/ 的这个注释也不⽀持嵌套注释, /* 开始注释后,遇到第⼀个 */ 就认为注释结束了。
关于sizeof
运算符
sizeof 运算符的返回值,C 语⾔只规定是⽆符号整数,并没有规定具体的类型,⽽是留给
sizeof 运算符的返回值,C 语⾔只规定是⽆符号整数,并没有规定具体的类型,⽽是留给
系统⾃⼰去决定, sizeof 到底返回什么类型。不同的系统中,返回值的类型有可能是 unsigned int ,也有可能是 unsigned long ,甚⾄是 unsigned long long ,对应的 printf() 占位符分别是 %u 、 %lu 和 %llu 。这样不利于程序的可移植性。
C 语⾔提供了⼀个解决⽅法,创造了⼀个类型别名 size_t ,⽤来统⼀表⽰ sizeof 的返
回值类型。对应当前系统的 sizeof 的返回值类型,可能是 unsigned int ,也可能是
unsigned long long 。
signed 和 unsigned
C 语⾔使⽤
signed
和
unsigned
关键字修饰 字符型和整型 类型的。
signed
关键字,表⽰⼀个类型带有正负号,包含负值;
unsigned
关键字,表⽰该类型不带有正负号,只能表⽰零和正整数。
对于
int
类型,默认是带有正负号的,也就是说
int
等同于
signed int
。