C Primer Plus 第六版编程练习第三章答案和记录一些学习历程

编程题部分:

1,通过试验观察系统如何处理整数上溢,浮点数上溢和浮点数下溢的情况。

整数上溢:编译器会不加提示的依次使用 int ,long ,unsigned long ,long long ,unsigned long long 当达到它能表示的最大值时,他会重新从起始点开始。
#include <stdio.h>
int main(void){
   
	int i = 2147483647;
	unsigned int j = 4294967295;
	float t = 3.2E38*100;
	float p = 0.1234E-2 / 10; 
	
	printf("%d %d \n",i,i+1);  //int的取值范围在[-32767,32767]  
							//而long类型的取值范围在[-2147483647,2147483647],int类型的i转换为long类型的i
							//所以此时的i为long的最大值,因此i+1从起始点{0}开始。 
	printf("%d %d \n",j,j+1);  //同理,unsigned long 取值范围为[0,4294967295]
	printf("%f %f \n",t,p);     //浮点型上溢,会给该值赋一个表示无穷大的值
								//浮点型下溢,则会损失精度
	
}</
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值