c语言long说明符,C语言-类型说明符 long,short,unsigned,signed
类型说明符基本概念
C 语言提供了一下四种说明符,四个都属于关键字;
short短型等价于 short int
long 长型 等价于 long int
signed 有符号型
unsigned 无符号型
这些说明符一般就是用来修饰 int 类型的,所以在使用时可以省略 int
short和 long
short 和 long 可以提供不同长度的整型数,也就是可以概念整型数的取值范围
在 64 位编译器下,int 占用 4 个字节(32bit),取值范围是-2 ** 31~2 ** 31-1
short占用 2 个字节(16bit),取值范围是-2 ** 15~2 ** 15-1
long 占用 8 个字节(64bit),取值范围是-2 ** 63~2 ** 63-1
总结一下,在 64 位编译器下
short 占 2 个字节
int 占 4 个字节
long 占 8 个字节
因此如果使用的整数不是很大的话可以使用 short 代替 int,这样的话可以节省内存开销
int main(int argc, const char * argv[]) {
/*
short 2 个字节
int 4 个字节
long 8 个字节
long long 8个字节
*/
int num = 123456789999;
printf("使用int 来输出;%i\n",num); // -1097261585
// C语言中不看怎么存,只看怎么取
long num1 = 123456789999;
printf("使用int 来输出;%li\n",num1); // 123456789999 使用%li 或者 %ld 输出
long long num2 = 123456789999;
printf("使用int 来输出;%li\n",num2);
// long long 和 long 的区别
// 在 64 位的编译器下没有区别,在 32 位的编译器下 long long占 8 个字节,long 占 4个字节
return 0;
}
如果要输出 short int 的话使用%hi 或者%hd 输出
unsigned 和 signed
unsigned 无符号修饰
signed 有符号修饰
/*
signed
unsigned
*/
// 如果给变量前面加上 signed 修饰符的话,代表当前变量的取值范围是正数,负数,零
// 就代表把二进制的最高位作为符号位,默认是有 signed 的修饰的
signed int num = 9;
// 如果给变量前面加上了 unsigned 修饰符的话,代表当前变量的取值范围只能是正数和零
// 如果想打印无符号的变量要使用%u 进行输出
// 代表不把二进制的最高位w作为符号位,
unsigned int num1 = -11; // 4294967285,可以正常输出零,正数
printf("num1 前面加了 unsigned 进行修饰:%u\n",num1);
return 0;
不同类型的说明符可以混合使用
// 混合使用
// 相同类型不能在一起使用
long unsigned int num = 111111111111111199;
printf("混合使用输出:%lu\n",num);
// 输出 long 使用%l
// 输出 short 使用%h
// 输出 long long 使用%ll
// 输出 signed 默认就是 signed,使用%i
// 输出 unsigned 使用%u 输出
原文:https://www.cnblogs.com/shanshan-test/p/12977496.html
c语言long说明符,C语言-类型说明符 long,short,unsigned,signed相关推荐
- 解决error C2760:语法错误: 意外的令牌“标识符”,预期的令牌为“类型说明符”
VS2017编译会报错 error C2760:语法错误: 意外的令牌"标识符",预期的令牌为"类型说明符" 解决办法: 项目属性->C/C++ -> ...
- c语言不通类型指针转换,C语言之强制类型转换与指针--#define DIR *((volatile unsigned int *) 0x0022)...
强制类型转换形式:(类型说明符) (表达式) 举例说明:1) int a; a = (int)1.9; 2)char *b; int *p; p = (int *) b; //将b的值强制转换为指向整 ...
- C++ const限定符和auto类型说明符
const限定符 # 1.限定常量 有时我们希望定义这样的变量:它的值不能被改变.为了满足这一要求,我们使用const对变量的类型加以限定: const int bufSize = 512; 这样就把 ...
- C语言学习6:数据类型 -> 基本类型 -> 整型类型(int、short int、long int、char等)
目录 1.数据类型的分类 2.基本整型 int 3.短整型 short int 4.长整型 long int 5.双长整型 long long int 6.字符型 char 7.布尔型 bool 1. ...
- C语言学习笔记01:C语言基础语法_变量类型_类型转换
文章目录 C语言第一天课程笔记 1. 内容安排 2. 课堂笔记 2.1 计算机硬件 2.2 计算机软件 2.3 编程语言和编译器 2.4 编程语言发展 2.5 C语言标准 2.6 C语言学习理由 2. ...
- c 编程替换语言,巧用typedef替换类型名称
为了方便我们编写程序,通常我们在利用C语言进行编写程序的过程中都会给某一数据类型替换一个新的名称,而往往我们通过使用关键字typedef来给数据类型进行名称的替换.那么到底什么是关键字typedef呢 ...
- c语言常用变量,c语言基本数据类型(c语言常用变量类型)
数据类型有:基本类型,导出类型,用户自定义类型 基本类型才包括:逻辑型 字符型 整型 浮点型 1.整型百int2(或4)同短整型(或长整型)2.短整型度short2-32768~327673.长整型l ...
- c语言顺序表有效元素长度,用C语言描述的顺序表类型
2.2.1 顺序表 用C语言描述的顺序表类型如下所示: // 存储结构 const int MAXLISTSIZE=80; // 预设的存储空间最大容量 typedef struct { ElemTy ...
- C++语言程序设计之关联容器类型
C++语言程序设计之关联容器类型 C++语言程序设计之关联容器类型
最新文章
- php fckeditor,php --- fckeditor
- 安装alien,DEB与RPM互换
- 基于长度特征的三文鱼好sea bass的区分,sesbass 比三文鱼长
- Opencv判断是否加载图片的两种方法
- python图形化界面开发工具_图形用户界面(GUI)常见问题
- 一主两从的环境,如果主库挂了,如何选举一个从库作为主库?
- 基于FPGA的异步FIFO设计
- leetcode怎么用时间刷_刷完700多题后的首次总结:LeetCode应该怎么刷?
- 交易机项目工作日志--2013-3-3
- 斜面上的根骨骼运动以及刚体测试
- layui表格取消横向滚动条_layui滑动条如何隐藏
- 提升工作效率的优秀工具收藏
- ROS路由器脚本文件编辑更新器
- Linux:it is too simplistic/systematic解决办法~
- 保护视力方面的电脑设定
- 【C语言】----找出100以内的所有质数(素数),并且输出前十个
- POJ - 3264
- 紫光软件php面试题,紫光展锐面试试题是什么?紫光展锐怎么面试的?
- static修饰符和final修饰符
- Html help安装步骤,Doxgen+Graphiz+htmlhelp配置
热门文章
- 在win server 2003上安装SQL Server 2008的步骤
- InstallShield 杀掉进程
- Timus 1114. Boxes
- 城市运行一网统管_【宣传活动】持续开展城市运行“一网统管”建设宣传活动...
- 如何用python生成可执行程序必须经过_python怎么生成可执行文件
- python帮助文档在哪_python文档在哪里
- 485串口测试工具软件下载_串口调试助手详细讲解(结合实操),通讯问题不再是问题...
- 最新php常用函数200个,180多个PHP常用函数总结
- [转载] 2020最新Java面试题,常见面试题及答案汇总
- markdown 流程图_测试了12款Markdown编辑器,推荐一个最好用的!