1、优先级:!(非) > 算术运算符 > 关系运算符 > &&和|| > 赋值运算符;
2、有>、<符号的优先级大于==、!=;
3、以0为假,非0为真;
4、数组初始化可以不指定长度,则该长度由花括号中的数组元素个数决定,如果制定了整型数组长度如10,但是花括号中只有5个元素,则只对前5个元素进行初始化,剩下的5个元素初始化为0,如果是字符,则剩下的5个初始化为‘、0’,如果是指针型数组,则初始化为NULL,即空指针;
5、C语言的数组是按行存放的,而在内存中各元素是连续存放的,不是二维的,是线性的;
6、C语言中没有字符串类型,字符串是存放在字符型数组中的;
7、如果在定义字符数组时不进行初始化,则数组中各元素的值是不可预料的;
8、‘\0’为字符串结束的标志,在ASCII码中为0的字符,不是一个可以显示的字符,而是一个“空操作符”;如果一个字符串数组中包含多个‘\0’,则输出的时候遇到第一个‘\0’就会停止;
9、使用字符串常量来使字符数组初始化:char c[]="I am happy",这字符串的长度是11,而不是10;
10、C语言中数组名代表该数组的起始地址,所以在写输入的时候不能这样写:scanf("%s,&str)";,而是scanf("%s,str);
11、指针是一个地址,指针变量是存放地址的变量;