今日打卡(被指针戳死)

1、C语言中,“数组名”即表示该数组“首元素的地址”。
延伸1:对于数组a,有:(a + 1)指向的是数组a的第2个元素a[1]。*(a + 1)表示指向a[1]
延伸2:定义指针int *P; 和数组int a[5]; 且*p = a; 则有:*(a + i) 和*(p + i)等同,都是指向a[i]
2、指针数组定义同时附初值。int a[5] = {1, 2, 3, 4, 5}; int *p = a; 或者 int *p = &a[0];
3、如果指针变量*p指向数组a[10],则p也可以带“下标”,即p[i]语法正确,其相当于*(p+i)。缘由:下标[]在程序进行编译时,处理方法是转换为地址,即
p[i]被处理成*(p+i)。但需要注意p的当前指向位置。

12/22-->参考文档《高质量C++/C编程指南》
1、对头文件使用ifndef/define/endif结构,可以防止头文件被重复引用
举例:头文件graphics.h
#ifndef GRAPHICS_H
#define GRAPHICS_H
#endif
2、BOOL布尔变量与零值比较:不可将BOOL变量与TRUE、FALSE、0、1比较。如需比较,正确方式为:BOOL flag; if(flag)(表示flag为真);if(!flag)(表示flag为假)
3、整形变量与零值比较:采用==、!=直接与0比较。例:int i; if(i!=0)
4、浮点变量与零值比较:不可将浮点变量与诸如0.0、0.1、0.200之类的数用==、!=比较。因为float和double都有精度限值。正确方式为:
float i; if((i>=expension) && (i<=expension))
5、指针变量与零值比较:应当用==、!=与NULL进行比较。因为指针的零值是”空“(NULL)
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值