printf中格式转换说明符'(单引号,撇号)失效

 

  C标准IO库stdio中包含的printf系列的函数可以格式化输出,以输出到标准输出的printf为例:

int printf ( const char * format, ... );

  其控制格式如下:

%[flags][width][.precision][length]specifier

  其中flags标志字段,在APUE第五章中有一个'标志

标志 说明
' (撇号)将整数按千位分组字符

  该符号已经被移除了,查询在线c函数说明网站已经不包括此标志。

  另外本人经过测试在linux环境下gcc 9.2.2版本编译(静态库libc.so)结果如下

  1 #include <stdio.h>
  2 int main()
  3 {
  4     unsigned int i=1000000;
  5     printf("%'d\n %d",i,i);
  6     return 0; 
  7 }          

  编译器识别了'标志,但是‘不起任何作用

100000
100000

  而在window10的vs2017环境下测试,编译器没有识别'标志符,输出如下

'100000
100000

 

posted @ 2021-10-14 11:35  放不下的小女孩  阅读(903)  评论(0)    收藏  举报