C语言打印short、long、long long和unsigned类型整数

c++ c++ 1699 人阅读 | 0 人回复

发表于 2023-4-23 16:28:36 | 显示全部楼层 |阅读模式

要打印unsigned int 数字,可以使用%u符号。打印long数值,可以使用%d 格式说明符。如果系统的 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 类型。
  下面给出了个打印例子:
#include<stdio.h> int main(void) {  unsigned int un =3000000000;/*int为32位*/ short end = 200; long big = 65537; long long verybig = 12345678908642; printf(“un =%uand not %d\n”,un,un); printf(“end =%hd and %d\n”,end,end); printf(“big = %ld and %hd\n”,big,big); printf(“verybig = %lld and %ld\n”,verybig,verybig) ; return 0;
  }

回复

使用道具 举报

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

本版积分规则