BE_YOUR_BEST 2024-08-19 22:30 采纳率: 50%
浏览 0
已结题

对getchar()函数感到的困惑

img


为什么这段代码我输入0打印出来的值是48,getchar()这个函数它返回整数的机制到底是怎样的啊?

  • 写回答

1条回答 默认 最新

  • 一直免费一直爽 2024-08-19 22:30
    关注

    以下回复参考:皆我百晓生券券喵儿等免费微信小程序作答:

    getchar()函数是C语言中的一个标准输入函数,用于从标准输入设备(通常是键盘)读取一个字符。它的返回值是读取到的字符的ASCII码值。

    在ASCII码表中,数字0的ASCII码值为48,所以当你输入0时,getchar()函数返回的是48。这就是为什么你看到输出值为48的原因。

    如果你想要在输入0时输出0,可以将getchar()函数的返回值直接赋值给一个字符变量,然后使用%c格式符进行输出。示例代码如下:

    #include<stdio.h>
    int main(void)
    {
        char a;
        a = getchar();
        printf("%c
    ",a);
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 8月27日
  • 已采纳回答 8月19日
  • 创建了问题 8月19日

悬赏问题

  • ¥15 游戏盾如何溯源服务器真实ip?
  • ¥15 Mac版Fiddler Everywhere4.0.1提示强制更新
  • ¥15 android 集成sentry上报时报错。
  • ¥50 win10链接MySQL
  • ¥35 跳过我的世界插件ip验证
  • ¥15 抖音看过的视频,缓存在哪个文件
  • ¥15 自定义损失函数报输入参数的数目不足
  • ¥15 如果我想学习C大家有是的的资料吗
  • ¥15 根据文件名称对文件进行排序
  • ¥15 deploylinux的ubuntu系统无法成功安装使用MySQL❓