c++ 将10进制char 转化为16进制char
可以使用以下方法将10进制char转换为16进制char:
-
将10进制char转换为int类型,使用stoi()函数或者atoi()函数实现。
-
将int类型转换为16进制字符串,使用sprintf()函数实现。
-
将16进制字符串转换为char类型,使用strtol()函数实现。
以下是示例代码:
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cstring>
using namespace std;
int main()
{
char decimal_char = '9'; // 输入的10进制char
int decimal_int = atoi(&decimal_char); // 将10进制char转换为int类型
char hex_str[5]; // 存储16进制字符串
sprintf(hex_str, "%02X", decimal_int); // 将int类型转换为16进制字符串
char hex_char = strtol(hex_str, NULL, 16); // 将16进制字符串转换为char类型
cout << "Decimal char: " << decimal_char << endl;
cout << "Hex string: " << hex_str << endl;
cout << "Hex char: " << hex_char << endl;
return 0;
}
输出结果为:
Decimal char: 9
Hex string: 09
Hex char:
注意:由于转换后的16进制char可能包含非可打印字符,所以可能无法正常输出
原文地址: https://www.cveoy.top/t/topic/eHDf 著作权归作者所有。请勿转载和采集!