不带限定符signed或者unsigned的char类型对象是否带符号,取决于具体实现。
字符的字典顺序其实就是字符在ASCII表中的ASCII值顺序。
char类型实际存储的是字符所对应的ASCII编码整数值,而不是字符本身,考虑如下实例:
#include
int main(void)
{
char ch = 'a';
printf("%c %d", ch, ch);
return 0;
}
执行结果如下:
1
a 97
sizeof()的返回值类型为size_t,size_t一定是整型,通常来说是unsigned int或者long unsigned int,这与具体实现有关。
sizeof()的操作数既可以是类型,也可以是变量。当操作数是类型时,必须加(),当操作数是变量时,()可有可无,建议一律使用(),避免错误。
通常将没有任何后缀的整数常量看作int类型,只有当其数值超过了int类型的表示范围时,才会使用其他类型。
将没有任何后缀的浮点常量看作double类型。
ANSI C不允许在for循环的控制部分定义变量,C99则允许,但是该变量的作用域仅限于for循环代码块。
在复合语句块中定义的自动变量的生命期是从定义开始到复合语句块结束为止。
如果用register将变量定义为寄存器类型,则无法获得该变量的地址。