【stm32】【printf】

格式说明符

cpp 复制代码
    // 正确用法
    printf("int8_t:  %"PRId8"\r\n", i8);    // 或者 %d
    printf("int16_t: %"PRId16"\r\n", i16);  // 或者 %d
    printf("int32_t: %"PRId32"\r\n", i32);  // 或者 %ld + (long)
    printf("int64_t: %"PRId64"\r\n", i64);  // 或者 %lld + (long long)
    // 正确用法
    printf("uint8_t:  %"PRIu8"\r\n", u8);     // 或者 %u
    printf("uint16_t: %"PRIu16"\r\n", u16);   // 或者 %u
    printf("uint32_t: %"PRIu32"\r\n", u32);   // 或者 %lu + (unsigned long)
    printf("uint64_t: %"PRIu64"\r\n", u64);   // 或者 %llu + (unsigned long long)
    
    // 十六进制输出
    printf("uint8_t(hex):  0x%02"PRIx8"\r\n", u8);
    printf("uint16_t(hex): 0x%04"PRIx16"\r\n", u16);
    printf("uint32_t(hex): 0x%08"PRIx32"\r\n", u32);
    printf("uint64_t(hex): 0x%016"PRIx64"\r\n", u64);

    printf("float:  %.6f\r\n", f32);
    printf("double: %.15f\r\n", f64);
    
    // 科学计数法
    printf("float(scientific):  %e\r\n", f32);
    printf("double(scientific): %e\r\n", f64);
    
    // 自动选择格式
    printf("float(auto):  %g\r\n", f32);
    printf("double(auto): %g\r\n", f64);

    printf("char: %c\r\n", ch);
    printf("string: %s\r\n", str);
    printf("pointer: %s\r\n", ptr);
    
    // 字符的ASCII码值
    printf("char as decimal: %d\r\n", ch);
    printf("char as hex: 0x%02X\r\n", ch);
指针类型
    int *ptr = &value;
    void *vptr = &value;
    
    printf("pointer address: %p\r\n", ptr);
    printf("void pointer: %p\r\n", vptr);
    
    // 如果需要具体数值
    printf("pointer as hex: 0x%08lX\r\n", (unsigned long)ptr);
相关推荐
李高钢16 分钟前
WPF MVVM Light(三):RelayCommand 命令与 Messenger 消息
前端·c#·wpf
lichenyang45336 分钟前
Socket.IO 原理与技术选型
前端
qq210846295338 分钟前
在python中什么是 self 和 cls?
开发语言·前端·python
我会冲击波38 分钟前
vibe coding 一个多月,我把 Claude Code + Pi 做成了桌面 IDE,还给它移植了 VS Code 的编辑体验
前端·javascript·后端
kyson_1 小时前
前端性能优化全链路实践指南:从网络、缓存到渲染与监测
前端
前端fighter1 小时前
线上崩溃?使用 TRAE Work 5分钟把混淆日志翻译成人话并输出复盘报告
前端·vue.js·程序员
网安蟹佬霸1 小时前
CTF Web方向解题全攻略:从信息收集到getshell(附实战payload与脚本)
android·前端·网络·安全·web安全·网络安全·网安
前端玩坑坑1 小时前
CSS Container Queries 容器查询入门教程
前端
带多刺的玫瑰1 小时前
Leecode#4刷题之寻找两个正序数组的中位数
java·前端·算法
qq_267612891 小时前
项目集、里程碑与迭代联动:Gitee项目管理如何支撑多团队规模化交付与进度风险治理
前端·gitee