C语言学习day03:整型的大小和范围
2023-12-15 00:36:10
引子:
整型数据类型的大小和范围是非常重要的概念。通过了解不同整型数据类型的大小和范围,我们可以更好地理解如何在程序中使用这些数据类型来存储不同范围的整数值。
整型的大小:
????????需要的方法:sizeof();
? ? ? ? 作用:计算开辟大小和存储大小
? ? ? ? 具体:?sizeof=计算数据类型在内存中占的字节(BYTE)大小
?? ?????sizeof理解:
?? ????????????1.不是函数/头文件,就是用来计算一个数据大小,单位是字节(BYTE)1B=8bit(b)
? ? ? ? ? ? ? ?2.sizeof的返回值是size_t
???????????????3.size_t的别名是unsigned int 就是一个无符号的整数类型
????????sizeof的写法
???????????????1.sizeof(数据类型)
?? ????????????2.sizeof(变量名)
? ? ? ? ? ? ? ?3.sizeof 变量名(不建议)
整型的类型:
- 短整型short=2字节(BYTE)
- 整型int=4字节(BYTE)
- 长整型long=4/8字节(BYTE)
- 长长整型long long=8字节(BYTE)
整数类型 | 占用空间 |
short(短整型) | 2字节 |
int(整型) | 4字节 |
long(长整型) | windows为4字节,Linux为4字节(32位),8字节(64位) |
long long(长长字节) | 8字节 |
注意:
????????需要注意的是,整型数据在内存中占的字节数与所选择的操作系统有关。虽然 C语言标准中没有明确规定整型数据的长度,但 long 类型整数的长度不能短于 int 类型,short 类型整数的长度不能长于 int 类型。*当一个小的数据类型赋值给一个大的数据类型,不会出错,因为编译器会自动转化。但当一个大的类型赋值给一个小的数据类型,那么就可能丢失高位。
复习占位符:
- %hd=短整型
- %d=整型
- %ld=长整型
- %lld=长长整型
最后附上代码整合:
#include<stdio.h>
int main()
{
//短整型short
short a = 10;
//整型int
int b = 20;
//长整型long
long c = 30;
//长长整型long long
long long d = 40;
//占位符 表示输出一个短整型
printf("%hd\n", a);
//占位符 表示输出一个整型
printf("%d\n", b);
//占位符 表示输出一个长整型
printf("%ld\n", c);
//占位符 表示输出一个长长整型
printf("%lld\n", d);
//计算开辟大小和存储大小
//sizeof=计算数据类型在内存中占的字节(BYTE)大小
/*
sizeof理解:
1.不是函数/头文件,就是用来计算一个数据大小,单位是字节(BYTE)1B=8bit(b)
2.sizeof的返回值是size_t
3.size_t的别名是unsigned int 就是一个无符号的整数类型
*/
/*
sizeof的写法
1.sizeof(数据类型)
2.sizeof(变量名)
3.sizeof 变量名(不建议)
*/
//short<=int<=long<long long
printf("短整型:%u\n", sizeof(a));//2=16bit
printf("整型:%u\n", sizeof(b));
printf("长整型:%u\n", sizeof(c));
printf("长长整型:%u\n", sizeof(d));
return 0;
}
文章来源:https://blog.csdn.net/q13407441836/article/details/134844284
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!