全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 嵌入式技术 >

内核调试工具printkprintk的输出格式

时间:2023-09-27 16:09

人气:

作者:admin

标签: 内核  函数 

导读:很多内核开发者喜欢的调试工具是printk,在Linux内核中,使用printk()函数来打印信息,它与C库的printf()函数类似。 printk()与printf()的一个重要区别是: printk()提供输出等级 。内核会根据这...

很多内核开发者喜欢的调试工具是printk,在Linux内核中,使用printk()函数来打印信息,它与C库的printf()函数类似。

printk()与printf()的一个重要区别是: printk()提供输出等级 。内核会根据这个等级来判断是否在终端或者串口中输出。

printk的输出格式

在实际调试中,printk()可以和printf()一样,直接输出一条字符串。

不过为了更好的显示一些调试信息,可以加上函数名字(__func__)和代码行号(__LINE__),例如:

printk(KERN_EMERG"figo:%s, %d", __func__, __LINE__);

在双引号""前加上输出等级KERN_EMERG,代表输出等级为0

另外,在使用printk()的时候需要注意输出格式,否则在编译时会出现很多的警告。printk的输出格式:

数据类型printk格式符
int%d或%x
unsigned int%u或%x
long%ld或%lx
long long%lld或%llx
unsigned long long%llu或%llx
size_t%zu或%zx
size_t%zd或%zx
函数指针%pf
温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信