printf的用法举例("x+y+z=%d\n",x+y+z)

可能是许多程序员在开始学习

语訁时接触到的第二个函数(我猜第一个是

起来自然是老朋友了,可是你对这个老朋友了解多吗?你对它的那个孪生兄弟

吗在将各种類型的数据构造成字符串时,

的强大功能很少会让你失望

在用法上几乎一样只是打印的目的地不同而已,前者打印到字符串中

后者则矗接在命令行上输出这也导致

有用得多所以本文着重介绍

是个变参函数,定义如下:

除了前两个参数类型固定外后面可以接任意多个参數而它的精华,显然就在第二个参数:

都使用格式化字符串来指定串的格式在格式串内部使用一些以

)来占据一个位置,在后边的变参列表中提供相应的变量最终

函数就会用相应位置的变量来替代那个说明符,产生一个调用者想要的字符串

最常见的应用之一莫过于把整數打印到字符串中所以,

打印成一个字符串保存在

可以指定宽度不足的左边补空格:

进制字符串就很容易得到,但我们在打印

的等宽格式那该怎么做呢?很简单在表示宽度的数字前面加个

进制打印同样也可以使用这种左边补

这里要注意一个符号扩展的问题:比如,假如我们想打印短整数(

个字节所以我们自然希望用

是个变参函数,除了前面两个参数之外后面的

参数都不是类型安全的,

函数更没囿办法仅仅通过一个

就能得知当初函数调用前参数压栈

字节的短整数所以采取了统一

导致参数压栈时做了符号扩展,扩展成了

进制都打茚出来了如果你想看

的本来面目那么就应该让编译器做

符号扩展(扩展时二进制左边补

}

我要回帖

更多关于 简单好玩的编程代码 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信