preparation

Prepartion

学习2.9 (Bitwise operators), 5.1 (Pointers and Addresses) through 5.5(Character Pointers and Functions) and 6.4 (pointers to structures) in K&R。

Bitwise operators

在这里插入图片描述
其中^表示按位异或,~表示求补。必须区分位运算符&,|和逻辑运算符&&,||。For example, if x is 1 and y is 2, then x & y is zero while x && y is one. 从这个例子中我们可以清除的发现两者的不同。

Pointers and Arrays

对C语言指针的学习,指针和数组在很大程度上非常相似,因此这部门的标题定为Pointers and Arrays。

p=&c,将变量c的地址赋给p,p称为指向c的指针。&运算符仅适用于内存中的对象:变量和数组元素。 它不能应用于表达式,常量或寄存器变量。
以下代码片展示了*和&运算符的简单使用:

 int x = 1, y = 2, z[10];    
 int *ip;          /* ip is a pointer to int */
 ip = &x;          /* ip now points to x */   
 y = *ip;          /* y is now 1 */    
 ip = 0;          /* x is now 0 */   
 ip = &z[0];       /* ip now points to z[0] */ 

在指针与数组的对应关系中,需要注意一点,及a[i]可以用*(a+1)来表示,及a相当于是指向a[0]的指针。但是a不是变量不能执行类似于a=p的赋值操作,或a++的算数运算操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值