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

为何putchar(1+'0')输出'1'而非10?putchar函数输出疑问

为什么putchar(1+'0')输出'1'而非'10'?
  • putchar的核心功能是输出单个字符,它接收的参数是字符的ASCII码值,只会把这个数值对应的ASCII字符打印出来,根本不处理多字符的数字输出。
  • 先算1+'0'的实际值:字符'0'的ASCII码是十进制48,1+48=49,而ASCII码49对应的字符就是'1',所以putchar(49)自然输出单个字符'1'。
  • 至于putchar('0')能正常输出'0',是因为'0'本身就是ASCII码48,putchar直接把这个码值转换成对应字符输出,完全符合它的工作逻辑。
  • 你预期输出"10"是搞错了函数用途,要输出数字10的字符串形式,得用printf("%d", 10),或者分两次调用putchar('1')和putchar('0')。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 18:10:34