C语言的例题,其中putchar(c1-32)表示什么啊?为什么输出是A呢?书上说还可以写成put
C语言的例题,其中putchar(c1-32)表示什么啊?为什么输出是A呢?书上说还可以写成putchar('\101'),为什么啊?#include“stdio.h”v...
C语言的例题,其中putchar(c1-32)表示什么啊?为什么输出是A呢?书上说还可以写成putchar('\101'),为什么啊?
#include“stdio.h”
viod main()
{ char c1;
c1='a';
putchar(c1);
putchar('\n');
putchar(c1-32);
} 展开
#include“stdio.h”
viod main()
{ char c1;
c1='a';
putchar(c1);
putchar('\n');
putchar(c1-32);
} 展开
1个回答
展开全部
这个就是字符类型在计算机内的表示方法导致的。
字符类型在计算机中其实是使用整数类型表示的,只是人们将0-127做了一个规定,每一个整数都代表一个固定的字符,这就是ASCII码,具体楼主可以查查ASCII码表的解释。
ASCII码表中,'A'的值是65,’a‘的值是97,所以'a' - 'A'就是97 - 65 = 32。
至于\101这个是一个转义字符,\开头的代表后面是8进制数,8进制101就是10进制的65,所以打印出来也是’A‘。
字符类型在计算机中其实是使用整数类型表示的,只是人们将0-127做了一个规定,每一个整数都代表一个固定的字符,这就是ASCII码,具体楼主可以查查ASCII码表的解释。
ASCII码表中,'A'的值是65,’a‘的值是97,所以'a' - 'A'就是97 - 65 = 32。
至于\101这个是一个转义字符,\开头的代表后面是8进制数,8进制101就是10进制的65,所以打印出来也是’A‘。
追问
谢谢啦。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询