C的一些入门常识

本文分享了作者在周六加班期间自学C语言的心得体会。主要介绍了整型变量的不同类型及其在内存中的存储方式,浮点数的存储原理及精度限制,以及字符变量的基本概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天本来是周六,薄荷老大昨晚说来加一下班,正好可以来做这里静静的看会书。昨晚去了书店买了3本书。一本C的 一本C++的一本EJB的。为了学好C++,我还是老实的从C开始学起来了。王猛大哥说每天最少看500行代码,然后被类库,测试我。感谢他们。上午看了一会书,学到了一些以前在JAVA中没有特别去注意的东西,这些都是基础的东西。先说一下学到的吧:

 

1:int 一般来说是长度为16位,也就是2个字节,short int 也一般为16个字节,long int为32个字节,这个还要根据具体的cpu来定,我说的都是一般的,正数在内存的中的存储方式是这样的:首先转化成为2进制的数字,然后前面补0够1位数。如果是负数的话,首先取得这个负数的绝对值的2进制数字,然后各位取反,然后再+1,也就是保存的是补码。而正数的补码就是他本身。

 

2:实数,其实也就是浮点数,也分为short float, float ,long float,他们占用的长度分别为32个字节,32个字节和64个字节,在内存中是分小数位和权重来保存的,比如123.45678e10 也就是123.45678 乘以10的10次方。在内存中的表现形式为,首先表示12345678 然后再存储13(10 + 3),当然在计算机中表示的都是2进制。但是对于浮点数,对于short float有效位为7位,也就是说你存储了123.45678e10,你取出来其实为1234568xxxxxx,只有前面7位是正确的。在c中你这样定义float a,这样a默认是long float,也就是64位的,注意以下。我测试精度的时候都没看好事默认的是long float所以测试总看不到效果。

 

3:字符,字符占用8位也就是1个字节,所以表示范围要算好了。字符和asc码是对应的,你保存了字符其实保存的是asc码。

 

暂时这些吧,我会把每天学到的根据自己的回忆写上来。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值