鱼C论坛

 找回密码
 立即注册
查看: 806|回复: 2

[已解决]数据类型问题

[复制链接]
发表于 2021-2-11 15:33:13 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
int i
i=123
然后sizeof是4
float k
k=3.14
输出sizeof为什么不是5,反而是4呢
123编译后是4个字节,3.14不是编译后应该是5个字节吗
最佳答案
2021-2-11 15:47:17
本帖最后由 一叶枫残 于 2021-2-11 15:56 编辑
  1. #include<stdio.h>

  2. int main()
  3. {
  4.         double d;
  5.         float f;
  6.         int i;
  7.             printf("int类型:%d\n",sizeof(i));
  8.             printf("float类型:%d\n",sizeof(f));
  9.             printf("double类型:%d\n",sizeof(d));
  10.             printf("数字123:%d\n",sizeof(123));
  11.             printf("数字3.14:%d\n",sizeof(3.14));
  12.            
  13.             return 0;
  14. }
复制代码

int类型:4
float类型:4
double类型:8
数字123:4
数字3.14:8
如果直接对数字进行sizeof,整数一般都是int类型的字节大小,有小数一般都是double的字节大小
你应该是没理解字节的概念
1字节对应着8位(二进制数),每个位置可以放0,1两个数,这样8个位置有2的8次方结果,也就是256种结果,表示256种数字,然后int就是2的31次方(4*8=32,正数区域,因为有一位代表正负,所以32-1=31),于是int代表的范围就是-2^31~(2^31)-1,这里的-1是因为还有个0也代表一个数字。
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-2-11 15:41:53 | 显示全部楼层
输出的sizeof是对应数据类型int和float的字节大小吧,不关数字的事吧
而int和float的字节大小都是4,怎么会是5?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-2-11 15:47:17 | 显示全部楼层    本楼为最佳答案   
本帖最后由 一叶枫残 于 2021-2-11 15:56 编辑
  1. #include<stdio.h>

  2. int main()
  3. {
  4.         double d;
  5.         float f;
  6.         int i;
  7.             printf("int类型:%d\n",sizeof(i));
  8.             printf("float类型:%d\n",sizeof(f));
  9.             printf("double类型:%d\n",sizeof(d));
  10.             printf("数字123:%d\n",sizeof(123));
  11.             printf("数字3.14:%d\n",sizeof(3.14));
  12.            
  13.             return 0;
  14. }
复制代码

int类型:4
float类型:4
double类型:8
数字123:4
数字3.14:8
如果直接对数字进行sizeof,整数一般都是int类型的字节大小,有小数一般都是double的字节大小
你应该是没理解字节的概念
1字节对应着8位(二进制数),每个位置可以放0,1两个数,这样8个位置有2的8次方结果,也就是256种结果,表示256种数字,然后int就是2的31次方(4*8=32,正数区域,因为有一位代表正负,所以32-1=31),于是int代表的范围就是-2^31~(2^31)-1,这里的-1是因为还有个0也代表一个数字。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-5-2 01:00

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表