清如许 发表于 2022-9-11 23:47:35

为什么输入数字输出了字母??

int c=65;
putchar(c);
这个输出的是A
但是当c=5时,输出的就是5???
请各位指教

jackz007 发表于 2022-9-12 00:34:38

本帖最后由 jackz007 于 2022-9-12 00:36 编辑

#include <stdio.h>

int main(void)
{
      int c = 65 ;
      printf("%c , %d\n" , c , c)// 数字 65 恰好是字母 'A' 的 ASCII 编码,所以,如果按字符(格式描述符:%c)显示变量 c,就会是字母 'A' ,如果按 10 进制整数(格式描述符:%d)显示变量 c,就会是 65。
      putchar(c)// 当然,如果用 putchar() 函数来输出变量 c,那么,正如这个函数名称透露出的信息那样,输出的肯定就是字符 'A' 了。
      c = 5 ;
      printf("%c , %d\n" , c , c)// ASCII 编码小于 32 的一律都是不可见字符,所以,此语句会输出一个不可见字符加一个十进制整数 5。
      putchar(c)// 输出一个 ASCII 编码为 5 的不可见字符
}

须弥芥子 发表于 2022-9-12 07:10:38

楼主楼主,不小心手滑点到踩了,还不能撤销

水边的小姑娘 发表于 2022-9-12 10:33:50

须弥芥子 发表于 2022-9-12 07:10
楼主楼主,不小心手滑点到踩了,还不能撤销

哈哈哈

1406598279 发表于 2022-9-12 10:47:00

须弥芥子 发表于 2022-9-12 07:10
楼主楼主,不小心手滑点到踩了,还不能撤销

这也行

清如许 发表于 2022-9-12 12:58:48

须弥芥子 发表于 2022-9-12 07:10
楼主楼主,不小心手滑点到踩了,还不能撤销

没事,我不在意这个{:10_257:}

清如许 发表于 2022-9-12 13:00:41

jackz007 发表于 2022-9-12 00:34


谢谢大佬
页: [1]
查看完整版本: 为什么输入数字输出了字母??