社区
C++ Builder
帖子详情
高手请进:怎么把char*类型的内容为ascii(十六进制)转换为对应的字符串?
kenerl
2002-08-19 09:03:01
如:
"4d"-->M
"314e"-->"1E"
"424342"-->"BCB"
怎么做?高手请出招
thx.....
...全文
177
5
打赏
收藏
高手请进:怎么把char*类型的内容为ascii(十六进制)转换为对应的字符串?
如: "4d"-->M "314e"-->"1E" "424342"-->"BCB" 怎么做?高手请出招 thx.....
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
bcb_fans
2002-08-20
打赏
举报
回复
不好意思,的确错了,更改:
for(int i=1; i < EncodeStr.Length(); i += 2)
{
AnsiString TempStr = "0x" + EncodeStr.SubString(i,2);
DecodeStr += AnsiString((char)(TempStr.ToInt()));
}
kenerl
2002-08-20
打赏
举报
回复
不行,下面的是ansistring
("0x" + EncodeStr.SubString(i,2))
只有是int的时候才行:
char c = (char)0x4D; // == 'M'
这其中0x4D是int
annkie
2002-08-20
打赏
举报
回复
To BCB_FANS(四大名捕之追杀令) :
应该是从后面往前递推吧,记得不是很清楚,以前学asm的时候经常有这个转换,印象中是如果hex值是单数(我现在都 不知道会不会有单数的情况)话,就应从最后往前推.
bcb_fans
2002-08-20
打赏
举报
回复
"4D"是字符'M'的ASCII码的确16进制表示
char c = (char)0x4D; // == 'M'
==================================
通用解码代码如下:
AnsiString EncodeStr;
AnsiString DecodeStr;
for(int i=1; i < EncodeStr.Length(); i += 2)
{
DecodeStr += AnsiString((char)("0x" + EncodeStr.SubString(i,2)));
}
belbel
2002-08-20
打赏
举报
回复
//使用标准C,程序如下,优点是简单而且快速——构建字母表只需一次。
int CharTable[100];
void MakeTable(void)
{
int j = 0;
for(int i='0'; i<='9'; ++i)
{
CharTable[i] = j;
++j;
}
j = 10;
for(i='A'; i<='Z'; ++i)
{
CharTable[i] = j;
++j;
}
j = 10;
for(i='a'; i<='z'; ++i)
{
CharTable[i] = j;
++j;
}
return;
}
void Transform(char *Src, char *Des)
{
char tmp;
int index = 0;
int i;
for(i=0; Src[i]!=0; i+=2)
{
if(0 == Src[i+1]) //Input data error.
{
return;
}
tmp = CharTable[Src[i]]*16 + CharTable[Src[i+1]];
Des[index] = tmp;
++index;
}
Des[index] = 0;
}
MySQL 数据
类型
和运算符
# 数据
类型
整数
类型
:五种 TINY SMALL MEDIUM INT BIG 浮点和定点小数
类型
:三种 FLOAT DOUBLE DECIMAL 日期与时间数据
类型
:五种 YEAR -1
字符串
类型
:二种
CHAR
(M) VAR
CHAR
(M) -1 二进制
字符串
:位字段BIT 固定...
Js
字符串
与
十六进制
的相互
转换
开发过程中,
字符串
与十六进、二进制之间的相互
转换
常常会用到,尤其是涉及到中文的加密时,就需要把中文
转换
为
十六进制
。下面说说具体的
转换
方法。 1、
字符串
转换
为
十六进制
主要使用
char
CodeAt()方法,此方法返回一个字符的 Unicode 值,该字符位于指定索引位置。 function stringToHex(str){ var val=""; for(var i ...
串口通信程序中
十六进制
格式发送和接收实现
刚刚用MFC编写了一个采集和设定中央空调控制板上参数的应用程序,控制板和PC机之间通过485转串口和串口转USB电路实现通信。程序设计中碰到一个问题是PC端对发送和接收数据格式的处理,控制板可以读懂的协议是一组16进制数,如“66 03 0C 00 01 00 01 00 00 00 00 00 3C 00 3E F5 94”,PC端应用程序可以解析的也是由控制板发送的一组16进制数,而串口通信是
JAVA笔记第三节(二进制,
十六进制
,八进制,变量,数据
类型
,标识符,运算符,变量作用域,转义字符)
JAVA笔记第三节(二进制,
十六进制
,八进制,变量,数据
类型
,标识符,运算符,变量作用域,转义字符) 文章目录JAVA笔记第三节(二进制,
十六进制
,八进制,变量,数据
类型
,标识符,运算符,变量作用域,转义字符)二进制二进制概念二进制转十进制取余十进制转二进制补码
十六进制
八进制变量数据
类型
标识符
类型
转换
float变量定义long变量定义
char
变量定义
ASCII
表方法运算符算数运算符赋值运算符关系运算符逻辑运算符
字符串
链接运算符三目运算符操作符优先级变量作用域转义字符 二进制 二进制概念 计算机中的数据.
基础练习
十六进制
转八进制
//刷题笔记 题目:
C++ Builder
13,825
社区成员
102,679
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章