C语言常见数据类型字节数和打印格式总结(快速掌握)
目录
- 一、简介
- 二、字节数对比
- 三、输出不同类型格式
- 四、常用类型简写总结
一、简介
本文主要介绍C语言常见数据类型字节数、不同类型输出格式和c程序中不同类型的简写总结。c语言中,常见数据类型的字节数和机器字长及编译器有关系,所以,int、long int、short int的宽度都可能随编译器而异。但有几条铁定的原则(ANSI/ISO制订的):
sizeof(short int)<=sizeof(int) ;
sizeof(int)<=sizeof(long int);
short int至少应为16位(2字节) ;
long int至少应为32位。
二、字节数对比
数据类型 \ 编译器位数 | 16位 | 32位 | 64位 |
---|---|---|---|
char | 1个字节 | 1个字节 | 1个字节 |
char* (即指针,一个地址所占位数) | 2个字节 | 4个字节 | 8个字节 |
short int | 2个字节 | 2个字节 | 2个字节 |
int | 2个字节 | 4个字节 | 4个字节 |
unsigned int | 2个字节 | 4个字节 | 4个字节 |
float | 4个字节 | 4个字节 | 4个字节 |
double | 8个字节 | 8个字节 | 8个字节 |
long | 4个字节 | 4个字节 | 8个字节 |
long long | 8个字节 | 8个字节 | 8个字节 |
unsigned long | 4个字节 | 4个字节 | 8个字节 |
三、输出不同类型格式
%p 可以匹配对应类型的指针地址,输出以16进制表示,会自带前缀0x
%x 可以对应int类型的指针,输出以16进制输出,不会自带前缀0x
%u 可以打印unsigned int类型
%d 可以打印int类型
%o 以八进制格式打印数据类型
%ho 以八进制格式输出short类型
%016lX"是十六进制输出的X格式说明符。 0表示根据需要填充零。 16表示最小输出长度。
注意:
如果系统的int和long类型具有同样的长度,使用%d就可以打印long数值,但是这会给程序移植到其他系统(这两种数据类型的长度不一样的系统)带来麻烦,所以建议使用%ld打印long数值。在x和o符号前也可以使用l前缀,因此%lx表示以十六进制格式打印长整数,%lo表示以八进制格式打印长整数。请注意,尽管在C中常量后缀可以使用大写和小写,但格式说明符只能使用小写字母。
C语言中还有其他几种printf()格式。首先,可以对short类型使用h前缀,因此%hd 表示以十进制显示short整数,%ho表示以八进制显示short 整数。h和 l 前缀都可以同u结合使用表示无符号整数。例如,%lu 表示打印unsigned long类型。
四、常用类型简写总结
typedef unsigned long uint64_t;
typedef unsigned int uint32_t;
typedef unsigned short uint16_t;
typedef unsigned char uint8_t;typedef long long int64_t;
typedef int int32_t;
typedef short int16_t;
typedef char int8_t;typedef signed char s8;
typedef unsigned char u8;typedef signed short s16;
typedef unsigned short u16;typedef signed int s32;
typedef unsigned int u32;typedef signed long s64;
typedef unsigned long u64;
C语言常见数据类型字节数和打印格式总结(快速掌握)相关推荐
- C语言实现把字节数转化成kb,C语言笔记
C编译器html gcc -> ccnode 虽然咱们称gcc是C语言的编译器,但使用gcc编译C语言源代码文件不只仅是编译的过程,而是要经历四个相互关联的步骤∶预处理(也称预编译)->编 ...
- C语言常见数据类型的输入与输出小细节
常见数据类型 输出与输入的符号 数据类型 scanf() printf() char %d %d int %d %d short %hd / %d %hd / %d long %ld %ld long ...
- c++ 基本数据类型字节数
关于这个基本的问题,很早以前就很清楚了,C标准中并没有具体给出规定那个基本类型应该是多少字节数,而且这个也与机器.OS.编译器有关,比如同样是在32bits的操作系统系,VC++的编译器下int类型为 ...
- mysql基础数据类型字节数_MySQL基础之数据类型
1.整数类型 整数类型包括: 整数类型 字节数 无符号数的取值范围 有符号的取值范围 TINYIN 1 0~255 -128~127 SMALLINT 2 0~65535 -32768~32768 M ...
- C语言int的字节数跟什么有关,C语言中int型字长和什么有关
满意答案 momo猫万岁 2018.01.07 采纳率:50% 等级:8 已帮助:1710人 这个和操作系统有关,一般int的长度都会采用机器字长,比如win32系统,int占4字节,32位: ...
- C语言移位运算 左移长度大于数据类型字节数的情况
看CMU的CSAPP课程时,遇到一个很有意思的问题,特此查询资料,记录一下 1. 测试 sizeof(int) = 4 // int 数据类型位4个字节(32位) 测试程序1: 把a左移30位时 (正 ...
- 32位/64位机上常用数据类型字节数(C语言)
可用如sizeof(char),sizeof(char*)等得出 32位编译器 char :1个字节 char*(即指针变量): 4个字节(32位的寻址空间是2^32, 即32个bit,也就是4个字节 ...
- C语言 笔试 各个字节数,C语言笔试试题及答案
(1)在计算机中,一个字节所包含二进制位的个数是 A)2 B)4 C)8 D)16 (2)在多媒体计算机中,CD-ROM属于 A)存储媒体 B)传输媒体 C)表现媒体 D)表示媒体 (3)在DOS系统 ...
- c语言读取文件字节数,怎么在C语言中利用fstat函数获取文件的大小
怎么在C语言中利用fstat函数获取文件的大小 发布时间:2021-01-22 17:03:17 来源:亿速云 阅读:110 作者:Leah 怎么在C语言中利用fstat函数获取文件的大小?针对这个问 ...
最新文章
- 有状态会话Bean(SLSB)和无状态会话Bean(SFSB)的区别
- 【控制】《自动控制原理》胡寿松老师-第7章-线性离散系统的分析与校正
- pyecharts 应用4: 二维散点图
- Mybatis笔记一:java.lang.NoClassDefFoundError: org/apache/ibatis/mapping/DatabaseIdProvider
- Halcon - 定位 - 卡尺
- matlab-Grefenstette的编码与解码
- php5.5 集成环境,windows下配置php5.5开发环境及开发扩展_PHP
- Java 并发框架Disruptor(七)
- PyTorch学习(7)-Seq2Seq与 Attention
- day21 java的随机数
- 3dmax高版本转低版本插件_Fundebug前端JavaScript插件更新至1.8.0,兼容低版本的Android浏览器...
- ui分离的进程 如何查找窗口句柄_如何使用 Linux screen
- 基于分布式光纤侦听技术的岛礁近岸防卫监测
- 鹏业安装算量软件按桥架快速布线
- 亚嵌教育李明:一生的学习
- Cheat Engine游戏脚本修改器通关教程(脑残版Step1-Step8)
- 2022-2028中国蛋白糖果市场现状研究分析与发展前景预测报告
- 超厉害的CSS3图片破碎爆炸效果!
- GIthub上关于新冠肺炎数据整理的项目汇总
- 身份证号码的正则验证
热门文章
- vue项目实现多张图片导出zip文件
- 第1.5章:StarRocks部署--集群部署
- 电商进入“后补贴时代”,为什么玩家集体做起长期投入?
- 6. 最短路径:一通百通的秘密,动态规划设计思路
- 科技创业新锐企业给予奖杯及一次性20万元资金扶持
- 模拟海_BSG商业模拟秀||做自己的网红经纪人
- 怎么可以让计算机不能联网,我想让电脑:只能收发电子邮件,不能上网,怎样设置?...
- 使用paddle框架无人驾驶 —— 语义分割模型检测车道线
- 约数(数学)(AcWing,第95场周赛)
- IDS11.50在线重建sysadmin库