正确扫描和打印size_t变量的方法(与平台无关)

C. *_* P. 0 c printf scanf size-t

我已经阅读了有关此主题的几篇文章,但是有人说应该完成的方式取决于您所使用的体系结构和系统(Windows / Linux),那么是否有适当的方法可以独立于该平台?

art*_*rtm 5

%zu对于size_t

  • %z 对于长度,和
  • %u 对于未签名

可以在下面找到详细信息

7.21.6.1 fprintf函数

6标记字符及其含义是:

...

z 指定后面的d,i,o,u,x或X转换说明符适用于size_t或相应的带符号整数类型参数;或者后面的n个转换说明符适用于指向与size_t参数对应的有符号整数类型的指针。