【C】printf warning: unknown conversion type character ‘l‘ in format [-Wformat=]

1、问题描述

在使用printf、fprintf打印long long类型时报错

printf warning: unknown conversion type character 'l' in format [-Wformat=]

2、原因分析

“%lld” 和 “%llu” 是 linux 下 gcc/g++ 用于 long long int 类型 (64 bits) 输入输出的格式符。
而 “%I64d” 和 “%I64u” 则是 Microsoft VC++ 库里用于输入输出 __int64 类型的格式说明。

3、printf打印格式整理

符号属性 长度属性 基本型 所占位数 取值范围 输入符举例 输出符举例
char 8 -2^7 ~ 2^7-1 %c %c 、 %d 、%o、%x
signed char 8 -2^7 ~ 2^7-1 %c %c 、 %d 、%o、%x
unsigned char 8 0 ~ 2^8-1 %c %c 、 %d 、 %u
[signed] short [int] 16 -2^15 ~ 2^15-1 %hd %d、%hd

Guess you like

Origin blog.csdn.net/u010168781/article/details/121764725