最标准、最完整、嵌入式 C 语言 printf /sprintf 必用格式符表
完整版 C 语言 格式符表嵌入式万能版1整数最常用表格格式符对应类型用途说明%dint有符号整数默认%uunsigned int无符号整数%hdshort短整型%huunsigned short无符号短整型%hhuuint8_t / unsigned char0~255天、时、分、秒%hhdint8_t / char有符号 char-128~127%ldlong长整型%luunsigned long无符号长整型%lldlong long64 位有符号整数%lluunsigned long long64 位无符号整数2浮点数表格格式符对应类型用途%ffloat小数默认 6 位%.1ffloat保留 1 位小数%.2ffloat保留 2 位小数%lfdouble双精度浮点数3字符 字符串表格格式符对应类型用途%cchar单个字符%schar*字符串4十六进制调试硬件必备表格格式符对应类型用途%x无符号整数小写十六进制 0~f%X无符号整数大写十六进制 0~F%02xuint8_t固定 2 位十六进制%04xuint16_t固定 4 位十六进制5指针地址表格格式符对应类型用途%p任意指针打印变量地址6补零 / 宽度控制超级常用表格格式符效果例子%02hhu固定 2 位不够补 05 →05%02d固定 2 位9 →09%04d固定 4 位12 →0012 嵌入式最最常用的 7 个背这 7 个就够%hhu→uint8_t天数、小时、分钟、秒%02hhu→ 时间格式化01:05:30%d→ int%f/%.1f→ 温度、电压%s→ 字符串%x/%X→ 十六进制%lu→ 无符号 long时间戳 回到你报错的那行一秒修复sprintf(day_str, %d, last_month_length);✅ 正确写法永不报错snprintf(day_str, sizeof(day_str), %hhu, last_month_length);