c语言复习课程1(唐老师答疑课)

1.register变量不能当作全局变量,因为cpu的资源是否有限,所以编译器会严格保护资源,不会让register变量申请为全局变量。

2.对于register变量进行取地址运行,一般编译器会进行报错,因为这是去取寄存器中的地址,寄存器是没有地址的。

3.位运算和逻辑运算不要一起使用~~~注意:位运算没有短路特性,这个很明显。

4.对于volatile和const同时使用定义一个变量的情况:我只能想到对只读寄存器的定义。 volatile最好不要理解成易变的,应该理解成直接从内存地址中取值,编译器不做优化。

5.sizeof(fun())  这条语句没有执行fun()  因为sizeof不是函数,是关键字是在编译器就决定的了。

6.对于unsigned int的输出和unsigned long的输出,在printf中本来对于unsigned long应该用%lu来定义格式的,unsigned int用%u来定义格式的。但是由于现在的编译器大多把int和long都当作32位来用,所以都可以只用%u来输出。这里有一个值得提示的是:记得对于long型的输出应该是%ld   %lo   %lx   %lu等的。

7.对于long long类型还没有找到很官方的资料,网上都说是64位的,输出格式应该是%lld,%llu,%llo,%llx等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值