C语言字符转换ASCII码

Python015

C语言字符转换ASCII码,第1张

#include<stdio.h>

voidmain()

{

unsignedchara

printf("enterchar:")

scanf("%C",&a)

printf("ascii=%d",a)//强制转化为ascii码

}

扩展资料:

在标准ASCII中,其最高位(b7)用作奇偶校验位。所谓奇偶校验,是指在代码传送过程中用来检验是否出现错误的一种方法,一般分奇校验和偶校验两种。奇校验规定:正确的代码一个字节中1的个数必须是奇数,若非奇数,则在最高位b7添1;偶校验规定:正确的代码一个字节中1的个数必须是偶数,若非偶数,则在最高位b7添1。

参考资料来源:百度百科-ASCII

思路:因为在 C 语言中,字符型数据在计算机内存中,是以字符的ASCII码形式存储。

所以字符和其对应的ASCII码是等价的,比如'A'这个字符和单字节整数65是等价的。即字符的整数形式就是其ASCII码。

故:定义一个整形变量并赋个字符,得到的整数就是该字符的ASCII码。字符串变化为ASCII,只需for循环遍历依次输出每个字符的ASCII码即可。

参考代码:

#include<stdio.h>

int main()

{

    char a[20]="ABDRTSSW"

    int n,i

    for(i=0a[i]='\0'i++){

        n=a[i]

        printf("%d ",n)//遍历输出字符串中各字符的ASCII码

    }

    return 0

}

#include<stdio.h>

voidmain()

{

unsignedchara

printf("enterchar:")

scanf("%C",&a)

printf("ascii=%d",a)//强制转化为ascii码

}

扩展资料

C语言ASCII编码的来源

ASCII码

一个二进制位(Bit)有0、1两种状态,一个字节(Byte)有8个二进制位,有256种状态,每种状态对应一个符号,就是256个符号,从00000000到11111111。美国制定了一套英文字符与二进制位的对应关系,称为ASCII码,沿用至今。

ASCII码规定了128个英文字符与二进制的对应关系,占用一个字节(实际上只占用了一个字节的后面7位,最前面1位统一规定为0)。例如,字母a的的ASCII码为01100001,那么你暂时可以理解为字母a存储到内存之前会被转换为01100001,读取时遇到01100001也会转换为a。