下面几点希望对大家有帮助。
1.当我们使用指针进行自加时,++与*两个运算符优先级相同,在没有括号的情况下按自右向左的顺序结合,*p=*p+1 若写成(*p)++的形式,一对括号不能省略,(*p)++表示先取p所指向储存单元的值,再使其增1,否则若写成*p++,将先把*p的值作为表达式的值,然后执行p++,使指针变量p加1,移动了指针而不是使p所指的储存单元中的值增1。
2.用sizeof输出字符串时,需要考虑系统会在字符串最后自动加一个字符'/0'。例如sizeof("fine")的结果为4。
3.sizeof是表达式长度符,strlen是函数。
4.strlen求出字符串长度,不包括结束符'/0'. 5.'\xhh'表示1到2位十六进制所代表的字符
6.比如二维字符数组char b[3][10] 用%s"格式输入字符串时,是以空格作为间隔符,而getchar()能识别空格符
7.对字符串进行输出时,输出项既可以是字符串常量或字符数组名,也可以是指向字符数组的字符指针变量。
8.指针可赋空值时,p=NULL; p=0; p='/0';都给指针p赋了空值。
9.在转义字符中,/xhh表示两位十六进制代表的ASCⅡ字符。
10.设置形参为数组时,a[]与a[4]都会被处理成指针