C语言常见数据类型字节数和打印格式总结(快速掌握)

C语言常见数据类型字节数和打印格式总结(快速掌握),第1张

目录
  • 一、简介
  • 二、字节数对比
  • 三、输出不同类型格式
  • 四、常用类型简写总结

一、简介

本文主要介绍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位
char1个字节1个字节1个字节
char* (即指针,一个地址所占位数)2个字节4个字节8个字节
short int2个字节2个字节2个字节
int2个字节4个字节4个字节
unsigned int2个字节4个字节4个字节
float4个字节4个字节4个字节
double8个字节8个字节8个字节
long4个字节4个字节8个字节
long long8个字节8个字节8个字节
unsigned long4个字节4个字节8个字节
三、输出不同类型格式
%p 可以匹配对应类型的指针地址,输出以16进制表示,会自带前缀0x
%x 可以对应int类型的指针,输出以16进制输出,不会自带前缀0x
%u 可以打印unsigned int类型
%d 可以打印int类型
%o 以八进制格式打印数据类型
%ho 以八进制格式输出short类型

注意:
如果系统的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;

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1499178.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-25
下一篇 2022-06-25

发表评论

登录后才能评论

评论列表(0条)

保存