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

浙公网安备 33010602011771号