小樱知识 > 生活常识c语言printf语句(c语言printf用法例子)

c语言printf语句(c语言printf用法例子)

提问时间:2022-03-16 13:13:03来源:小樱知识网


C语言程序开发中,很多程序员喜欢使用 printf() 函数打印一些日志,便于观察和调整程序,因此 printf() 函数是一个使用相当频繁的函数。

类似的,调用 scanf() 函数读取用户输入的整数时,也可以同时使用 %i 和 %d,%i 占位符意味着用户输入的整数将被解析为任意进制的整数(八进制、十六进制、十进制等),而 %d 的意义更加明确——将整数解析为十进制整数。

下面再来看一段C语言代码示例:

#include <stdio.h>int main() { int out = 10; int in[4]; printf("%d %i %x %on", out, out, out, out); sscanf("010 010 010 010", "%d %i %x %o", &in[0], &in[1], &in[2], &in[3]); printf("%d %d %d %dn", in[0], in[1], in[2], in[3]); sscanf("0x10 10 010", "%i %i %i", &in[0], &in[1], &in[2]); printf("%d %d %dn", in[0], in[1], in[2]); return 0;}

C语言代码示例

编译这段C语言代码并执行,得到如下输出:

# gcc t1.c# ./a.out 10 10 a 1210 8 16 816 10 8

我们将注意力放在 %d 和 %i 的区别上,应该能够发现,010 这个数字在使用 %d 占位符时,会被解析为十进制的 10,而使用 %i 占位符时,则被解析为十进制的 8。类似的,其他异同留给读者自己体会了。

小结

本节主要讨论了一个有趣的问题,很多C语言初学者在刚刚接触 printf() 函数的占位符时,常觉得这些占位符很难记忆,其实它们大都是对应数据类型英文单词的首字母。由于C语言程序中的整数常常有不同进制之分,因此更常使用的整数占位符不是integer的首字母 %i,而是具有更加明确含义的,也即十进制整数的 %d,弄清这一点,占位符就很好记了。

点个关注吧

欢迎在评论区一起讨论,质疑。文章都是手打原创,每天最浅显的介绍C语言、linux等嵌入式开发,喜欢我的文章就关注一波吧,可以看到最新更新和之前的文章哦。

以上内容就是为大家推荐的c语言printf语句(c语言printf用法例子)最佳回答,如果还想搜索其他问题,请收藏本网站或点击搜索更多问题

内容来源于网络仅供参考
二维码

扫一扫关注我们

版权声明:所有来源标注为小樱知识网www.xiaoyin02.com的内容版权均为本站所有,若您需要引用、转载,只需要注明来源及原文链接即可。

本文标题:c语言printf语句(c语言printf用法例子)

本文地址:https://www.xiaoyin02.com/shcs/118711.html

相关文章