
c语言中单引号,双引号,ASCⅡ码的具体用法
补充一下,针对下面这个代码:
while((c=getchar())!='\n')
{if((c>='a'&& c<='z')||(c>='A' && c<='z'))
w++;
else if (c==' ')
x++;
else if (c>='0' && c<='9')
y++;
else
z++;
}
为什么这里面判断c值的都要加单引号,不加引号不可以么,尤其是数字那个,还有,对于判断是否为空格,上面的代码是else if (c==' ')
表示的,为什么不能直接用ASCⅡ码表示,即else if (c==032)
? 展开

2023-06-12 广告
单引号表示单个字符,双引号表示字符串,加引号表示的是计算机屏幕上显示的字符的真正值是多少,就是a表示的屏幕上的a,‘a’表示的ASCII码,0~9同理。
用ASCⅡ码表示字符时不用加引号,如空格的ASCⅡ码为32,则直接用char a=32即可
扩展资料:
ASCⅡ码:
ASCII 码使用指定的7 位或8 位二进制数组合来表示128 或256 种可能的字符。标准ASCII 码也叫基础ASCII码,使用7 位二进制数(剩下的1位二进制为0)来表示所有的大写和小写字母,数字0 到9、标点符号,以及在美式英语中使用的特殊控制字符。
32~126(共95个)是字符(32是空格),其中48~57为0到9十个阿拉伯数字。
参考资料来源:百度百科-ASCⅡ码

示例:
#include<stdio.h>
#include<string.h>
void main()
{
char a;
scanf("%c",&a);
a=a-97+65;
// a=a-'a'+'A';
printf("%c\n",a);
}
扩展资料
单引号和双引号使用:
c语言中的单引号用来表示字符常量,双引号用来表示字符串常量。单引号括起来的一个字符代表整数,双引号括起来的字符代表一个指针。比如’a’表示字符常量,在内存中占一个字节,’a’+1就表示’a’的ascii码+1,就是’b’。
比如”a”表示字符串常量,在内存中占两个字节,因为最后还有一个结束符号’\0’,”a”+1表示指针运算,结果就指向结束符’\0’。
可以不加引号的,但那必须用ASCⅡ表示,如else if (c>='0' && c<='9')不加引号表示为else if (c>=48 && c<=57),else if (c==' ')表示为else if (c==32)而不是032,但这需要记住ASCII表,所以加引号的比较方便。
还有可以用ASCII字符所对应的数字来代替它进行运算/判断,因为无论你用什么字符进行什么动作,计算机最终都是将它转换成数字(二进制)后再运算的.