C语言字符转换ASCII码

有没有哪位高手能详细说明下,不用PRINTF这个函数,重点是要用自己的写的函数能完成这个功能吗。谢谢高手给予详解,本人菜鸟,请给出代码。... 有没有哪位高手能详细说明下,不用PRINTF这个函数,重点是要用自己的写的函数能完成这个功能吗。
谢谢高手给予详解,本人菜鸟,请给出代码。
展开
 我来答
帐号已注销
2020-12-06 · TA获得超过77万个赞
知道小有建树答主
回答量:4168
采纳率:93%
帮助的人:165万
展开全部

#include<stdio.h>

voidmain()

{

unsignedchara;

printf("enterchar:");

scanf("%C",&a);

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

}

扩展资料:

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

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

百度网友faadf46
高粉答主

2020-12-06 · 说的都是干货,快来关注
知道答主
回答量:4556
采纳率:0%
帮助的人:73.4万
展开全部

1、首先需要打开自己的终端窗口,如下图所示。

2、接下来需要利用vim创建一个c程序,如下图所示。

3、接下来需要编写自己所需要的程序,如下图所示。

4、最后在自己的程序中就可以看到字符转成ASCII了,如下图所示。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
更改验证单
推荐于2017-09-16
知道答主
回答量:6
采纳率:0%
帮助的人:3.3万
展开全部
//函 数 名: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;
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
忘至白葬不情必0T
2010-01-15 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:90%
帮助的人:1.2亿
展开全部
C语言中,字符和其ASCII码是等价的,比如'A'这个字符和单字节整数65是等价的.
比如char c='A';int a=c;的话,a就是65
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
丁箫虎德昌
2019-02-10 · TA获得超过4194个赞
知道大有可为答主
回答量:3079
采纳率:24%
帮助的人:372万
展开全部
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。
加减运算后的字符很可能是不可打印字符,或“看不见”的字符。
所以你的题目有问题。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式