格式化输出格式说明符%u和%zu

目录

一、%u

总结:

二、%zu

三、区别总结


一、%u

  • 用于输出无符号整数(unsigned int)。
  • 例如:
unsigned int a = 10;
printf("%u\n", a);
  • 这里%u要求对应的参数是unsigned int

总结:

  • %u:专门用于输出 unsigned int 类型的值。
  • 不可以用来输出其他类型,比如 unsigned shortunsigned long,虽然在某些平台上,传入合适类型的值可能还能正确显示,但标准应使用专对应的格式说明符。

如果你要输出其他大小的无符号整数,有以下对应的格式说明符:

  • %hu:unsigned short
  • %lu:unsigned long
  • %llu:unsigned long long(C99引入)

二、%zu

  • 用于输出size_t类型的变量。
  • size_t是一个无符号整数类型,用于表示对象大小(比如通过sizeof()获得的值)。
  • 特别说明%zu是在C99标准中引入的,确保在不同平台和编译器上都能正确输出size_t值。
  • 例如:
size_t size = sizeof(int);
printf("%zu\n", size);

三、区别总结

格式说明符作用对象说明符作用例子
%uunsigned int输出无符号整数unsigned int a = 5; printf("%u", a);
%zusize_t输出对象大小,用于sizeof()printf("%zu", sizeof(int));

        如果你用 %u 输出 size_t 变量,可能会因类型不匹配在某些平台上出现问题,使用 %zu 更加安全和符合标准。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你好,奋斗者!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值