ASCII比较大小的张虢咆噘时候,是比较两个数中的第一个字符
常用字符有128个,编码从0到127。
控制字符:0~3127,共33个,不可伍啪怪顼显示。
普通字符:95个,包括10个阿拉伯数字、52个英文大小写字母、33个运算符。
每个字符占一个字节,7位,最高位为0。
ASCII码的大小规则,0-9<A-Z<a-z:
数字比字母要小。如“7”<“F”
数字0比数字9要小,并按0到9顺序递增。如“3”<“8”
字母A比字母Z要小,并按A到Z顺序递增。如“A”<“Z”
同个字母的大写字母比小写字母要小32。如“A”<“a”
记住几个常见字母的ASCII码大小:
“A”为65;“a”为97;“0”为48;
扩展资料:
ASCII码的一些应用
对于一串字符串大写改小写,小写改大写
#include<stdio.h>
#include<string.h>
intmain(intargc,char**argv)
{
chara[20]="a2b4cd58eF9G";
inti;
for(i=0;i<strlen(a);i++)
{
if(a[i]>=97&&a[i]<=122)
{
a[i]=a[i]-32;
continue;
}
if(a[i]>=65&&a[i]<=90)
{
a[i]=a[i]+32;
continue;
}
}
printf("%s",a);
return0;
}
将数字型字符串改成int类型
#include<stdio.h>
#include<string.h>
intmain(intargc,char**argv)
{
chara[20]="12345";
inti;
intc=0,d=0;
for(i=0;i<strlen(a);i++)
{
c=a[i]-48;
d=d*10+c;
}
printf("%d\n",d);
c=0,d=0;
for(i=strlen(a)-1;i>=0;i--)
{
c=a[i]-48;
d=d*10+c;
}
printf("%d\n",d);
return0;
}
汉字的ASCII:
英文标准的ASCII码中只有128个符号,只需要7位,但是计算机分配存储的最基本单位是字节,至少是8位,因此最高位为0;
因此常见的西文符号的ASCII都是在0-127之间,无论是有符号还是无符号去观察它们,都是正的。
中文的符号远超过256个,因此用一个字节不能存储汉字,早期的GB2312采用了两个字节。
但是很麻烦的问题是一个汉字用两个字节存储在计算机中后,和两个西文字母的ASCII混淆,为了避免这个混淆,汉字两个字节的最高位都是1。
如果用有符号的数去读取一个汉字的内容,最高位的1正好和负号位置相同,因此此时就会发现汉字的内吗是负的。