You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在C语言中使用putchar()打印整数时添加'0'的作用是什么?

为什么用putchar()打印整数时要加'0'?

首先得明确:putchar()的本职工作是输出ASCII字符,不是直接输出整数的数值。

计算机里,字符和整数是通过ASCII码映射的:字符'0'对应的ASCII值是48,'1'是49,一直到'9'是57——刚好是连续的整数。当你有一个0-9的整数(比如3),直接传给putchar()的话,它会把3当成ASCII码,输出对应的控制字符(这玩意儿通常是看不见的);但如果给这个整数加上'0',就相当于3 + 48 = 51,而51正好是字符'3'的ASCII码,putchar()就能输出你想要的数字字符了。

举两个直观的例子:

  • 写putchar(5);,屏幕上不会显示'5',反而会输出ASCII码5对应的控制字符(ENQ,一种通信控制信号);
  • 写putchar(5 + '0');,计算后得到53,对应ASCII字符'5',屏幕上就会正常显示数字5。

如果要打印多位数(比如123),你得先把每一位拆出来(1、2、3),再给每一位分别加上'0',用putchar()逐个输出,才能得到正确的数字字符串。

内容的提问来源于stack exchange,提问作者Dan ndongi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 10:25:22