1.%u表示无符号十进制整数
2.吃掉垃圾字符的方法
a.getchar()
b.空格%c
c.%*c
3.continue、break
continue只结束本次循环,而break终止本层循环,switch语句不可以使用contine
4.指针运算
指针运算的实质是地址的计算
px+n:指针向地址大的地方移动n个数据
px-n:指针向地址小的方向移动n个数据
px++:指针向地址打的方向移动1个数据
px - py:两个指针之间相隔数据元素的个数
注意:
不同数据类型的两个指针加减无意义
指针的关系运算符
两指针之间的关系运算表示它们指向的地址位置之间的关系。指向地址大的指针大于指向地址小的指针。
指针与一般整数变量之间的关系运算没有意义,但可以和零进行等于或不等于的关系运算,判断指针是否为空。
5.const用法
1.const <数据类型> 变量名 = [<表达式>]
常量化变量是为了使得变量的值不能修改
2.const <数据类型> * <指针变量名称>
常量化指针目标是限制通过指针改变其目标的数值(限制(*p)++),但<指针变量>存储的地址值可以修改
3.<数据类型> * const <指针变量名称>
使得<指针变量>存储的地址值不能修改。但可以通过*<指针变量名称>可以修改指针所指向变量的数值
int m = 10; const int *p; int * const q = &m; //此处不能先int * const q;再赋值q = &m const int * const r = &m; p = &m; //right (*p)++ //error q = &m; //error *q = 20; //right r++; //error (*r)++; //error
gdb调试不懂 lv3 lv6