C语言,ASCII码怎么转换为字符?

我知道字符加‘’就是ASCII码,
但ASCII码怎么转换为字符,比如将 ASCII码48 转换为 数字0?

    直接(int)强制转换就是可以;

    printf("%x", 要转换的字符);

    字符就是一个对应的ASCII码,无需再转换了,得到它的ASCII码那直接printf ("%d" , a);就可以了,不存在转换这一说的,参考如下:

    #include <stdio.h>。

    int main(void)。

    char x。

    x = 's'。

    printf ("%d\n", x)。

    return 0。

C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

【名称由来】:

    是因为 C语言源自Ken Thompson发明的B语言,而 B语言则源自BCPL语言。

    1967年,剑桥大学的Martin Richards对CPL语言进行了简化,于是产生了BCPL(Basic Combined Programming Language)语言。

【基本特性】:

    高级语言:它是把高级语言的基本结构和语句与低级语言的实用性结合起来的工作单元。

    结构式语言:结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。

    代码级别的跨平台:由于标准的存在,使得几乎同样的C代码可用于多种操作系统,如Windows、DOS、UNIX等等;也适用于多种机型。

    使用指针:可以直接进行靠近硬件的操作,但是C的指针操作不做保护,也给它带来了很多不安全的因素。C++在这方面做了改进,在保留了指针操作的同时又增强了安全性,受到了一些用户的支持,但是,由于这些改进增加语言的复杂度,也为另一部分所诟病。

字符:是指计算机中使用的字母、数字、字和符号,包括:1、2、3、A、B、C、~!·#¥%……—*()——+等等。在 ASCII 编码中,一个英文字母字符存储需要1个字节。在 GB 2312 编码或 GBK 编码中,一个汉字字符存储需要2个字节。

【作用】:

    针对微软公共语言运行库的应用程序使用编码将字符表示形式从本机字符方案映射至其他方案。应用程序使用解码将字符从非本机方案映射至本机方案。

    电脑和通讯设备会使用字符编码的方式来表达字符。

温馨提示:内容为网友见解,仅供参考
第1个回答  2019-11-14

#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。

第2个回答  2010-01-16
//函 数 名:CharToHex()
//功能描述:把ASCII字符转换为16进制
//函数说明:
//调用函数:
//全局变量:
//输 入:ASCII字符
//返 回:16进制
/////////////////////////////////////////////////////////////////////
unsigned char CharToHex(unsigned char bHex){
if((bHex>=0)&&(bHex<=9))
bHex += 0x30;
else if((bHex>=10)&&(bHex<=15))//大写字母
bHex += 0x37;
else bHex = 0xff;
return bHex;
}
/////////////////////////////////////////////////////////////////////
//函 数 名:HexToChar()
//功能描述:把16进制转换为ASCII字符
//函数说明:
//调用函数:
//全局变量:
//输 入:16进制
//返 回:ASCII字符
/////////////////////////////////////////////////////////////////////
unsigned char HexToChar(unsigned char bChar){
if((bChar>=0x30)&&(bChar<=0x39))
bChar -= 0x30;
else if((bChar>=0x41)&&(bChar<=0x46))//大写字母
bChar -= 0x37;
else if((bChar>=0x61)&&(bChar<=0x66))//小写字母
bChar -= 0x57;
else bChar = 0xff;
return bChar;
第3个回答  2019-01-03
#include <stdio.h>
#include <stdlib.h>

int main()
{
int i=48;
char a;
a = (char)i;//这一步是把ascii码转换成字符,48对应字符‘0’
int c;
c = (int)a;//这一步是把字符再转换成ascii码
printf("%c\n",a);//
printf("%d\n",c);
return 0;
}
第4个回答  2006-05-25
ASCII字符值范围是0x00到0x7f。因为有不可见和键盘不好拍的字符。所以你可用整型数输入。
unsigned char a[100],b[100];
unsigned char x,y,z;

scanf("%d",&a[i]);
if (a[i] > 0x7f || a[i] < 0) 重输;

加减运算 就用算数表达式。例如
y = a[1]+a[2];
b[2] = a[1] + a[2] - a[3];

unsigned char 就是8bit无符号整数。

加减运算后很可能超界,即大于0x7f或小于0。
加减运算后的字符很可能是不可打印字符,或“看不见”的字符。
所以你的题目有问题。

C语言,ASCII码怎么转换为字符?
直接(int)强制转换就是可以;printf("%x", 要转换的字符);字符就是一个对应的ASCII码,无需再转换了,得到它的ASCII码那直接printf ("%d" , a);就可以了,不存在转换这一说的,参考如下:include <stdio.h>。int main(void)。char x。x = 's'。printf ("%d\\n", x)。return 0。C语言...

C语言,ASCII码怎么转换为字符
printf("ascii=%d",a);\/\/强制转化为ascii码 }

c语言ascii码转换方法
使用强制类型转换来进行ASCII码转换。在C语言中,可以使用强制类型转换来将字符转换为ASCII码或将ASCII码转换为字符。将字符转换为ASCII码时,可以将字符强制转换为int类型,例如:intascii=(int)ch;将ASCII码转换为字符时,可以将ASCII码强制转换为char类型,例如:charch=(char)ascii;ASCII码的范围是0-...

C语言ASCII码与字母如何转换?求详解
1、首先,定义两个字符变量z和Z,用以保存转换的字符。2、接着,定义一个整型变量n,保存用来转换的ASCII码。3、把n的值赋给变量z,实现字符的转换。4、输出窗口中,输出将ASCII码转换为的字符。5、给变量n重新赋值,其值为大写字母的ASCII码。6、将ASCII码转换为对应的大写英文字母,并在输出窗口...

用C语言编程,实现转换ascii码值为字符
代码:1、#include<iostream> 2、using namespace std;3、int main()4、{ 5、char c;6、cin>>c;7、cout<<(int)c<<endl;8、return 0;9、} ASCII码‘a’为97‘A’为65

用C语言把连续输入的ASCII码转为字符串
0, sizeof(tmp)); \/\/ tmp临时数组清0 strncpy(tmp, p1, p2 - p1); \/\/ 截取一个数字到临时数组tmp中 str[i++] = strtol(tmp, NULL, 10); \/\/ 字符转化为数字,并存到str中 p1 = p2 + 1; \/\/ 指针指向下一组数字 } str[i++] = strtol(p1, NULL,...

如何用c语言 把一连串的ASCll码还原成字符
1、直接用整数类型读入字符数组当中,再用字符类型输出即可。2、例程:FILE inFile("输入数据的文件名","rt");FILE outFile("输出数据的文件名","wt");int n;char str[1000];\/\/1000为文件的最大长度,你随便设,够大就行char ans;\/\/储存结果while(!feof(inFile)){fgets(str,1000,inFile);...

c语言怎么从键盘输入一个数的ASCII码并将它转换为对应的字符
printf("The ASCII number is : %c\\n",i);} void choose(){ char a;printf("Test again?Y\/N?");scanf("\\n%c",&a);switch(a){ case 'n' : k=0; break;case 'N' : k=0; break;} } void main(){ k=1;while(k==1){ show();choose();} } 稍微智能点,可以询问你...

C中如何将ASCII码转化为字符
在输出时以字符类型(就是%c)输出即可

C语言如何将ascii值转换成对应的字符
直接赋值就可以了,c语言中,字符型可以和整数混用

相似回答