如果我有一个 char 包含一个十六进制值,例如 0x53,(S),我如何将其显示为“S”?
代码:
char test = 0x53;
cout << test << endl;
谢谢!
没有存储十六进制值、十进制或八进制值的变量之类的东西。十六进制、八进制和十进制只是向编译器表示数字的不同方式。编译后的代码将以二进制表示所有内容。
这些语句都具有完全相同的效果(假设字符集是 ASCII):
test = 0x53; // hex
test = 'S'; // literal constant
test = 83; // decimal
test = 0123; // octal
因此,无论您如何为其分配值,都以与任何字符相同的方式打印字符。
只需使用以下内容,您已经回答了您的问题:
using namespace std;
int main() {
char test = 0x53;
std::cout << test << std::endl;
return 0;
}