Day2

本文详细介绍了在计算机科学中变量的命名规则、不同类型变量的存储方式及浮点数的内部表示方法。通过具体实例解释了有符号整型、无符号整型变量的存储原理及其打印方式的区别,并探讨了浮点数的存储机制。

#if 0
变量的命名方式为数字,字母,下划线,而且数字不能开头。但在ubuntu系统的vi编译器下却可以用$$ 符 号 来 作 为 变 量 名 , ( 也 许 符号来作为变量名,(也许 是万能的吧)。
linux 下面开新的终端 ctrl+shift+t (ctrl+shift+n)
linux 下面切换已经打开的终端 alt+1或alt+2 (alt+tab)
2.%u 打印无符号整型 unsigne int 范围为 0~ 2^32 -1;
signed int i; //有符号整型变量,四字节
signed short int i; //有符号短整型变量,二字节整型变量
signed long int i; //有符号长整型变量,四个字节。此类型的意思是字节的个数不小于四个
signed long long int i; //有符号长长整型,八个字节。
正数如何储存:例如 十进制100
可以将十进制转换为十六进制,然后将十六进制,再转换为二进制。
100(16x6+4) 十六进制为0X64 转为二进制 0000 0000 0000 0000 0000 0000 0110 0100 此处int型变量所以为四个字节,32位,不够前面补0。
负数如何储存:例如 十进制 -100
要明白数值在计算机中储存的原理,为正数时将数值换为二进制然后储存即可。如果为负数,则先换为此绝对值也就是正数的二进制,然后求补码(按位取反再加1)。
int main(void)
{
signed int i;
i = -100;
printf("%u\n", i); //运行结果为 4294967196
printf("%d\n", i); //运行结果为 -100
/* 0000 0000 0000 0000 0000 0000 0110 0100
1111 1111 1111 1111 1111 1111 1001 1011
1111 1111 1111 1111 1111 1111 1001 1100
0X F F F F F F 9 C */

                  //要明白数值存入到计算机内存中只是一个值,让它以何种方式打印出来,它就会按照何种方式打印出来,存入内存的值本身是不变的,也可以认为只是表现形式的不同。							 
unsigned int k;
k = 0xFFFFFFFF;

// k++;
printf("%u\n", k); //运行结果 4294967295 (2^32 -1)
printf("%d\n", k); //运行结果 -1
/* 1111 1111 1111 1111 1111 1111 1111 1111
1111 1111 1111 1111 1111 1111 1111 1110
0000 0000 0000 0000 0000 0000 0000 0001
0X 0 0 0 0 0 0 0 1 */

return 0;

}

int main(void)
{
float f;
f = 0.9;
printf("%d\n", sizeof(0.9)); //此处f 与0.9 是不等的,编译器默认的浮点型是双精度浮点型,为八个字节,而float 为四个字节,精度不同所以不等。
if(f == 0.9) //如果给0.9后面加f (0.9f)则会相等
{
printf(“Yes\n”);
}
else
{
printf(“No\n”);
}

return 0;

}
***对于32位CPU来说效率最高的还是int型变量运算
二、 浮点型
例如 1.23 0.12 123E3(123x10^3 //此处次方必须位整数,正负都可以)
float //单精度浮点型 为4个字节
printf("%f\n", i); //%f 输出为浮点型变量
计算机如何存储浮点数。

#endif

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值