C++中的 0x 和"\x"有什么区别?

What is the difference between 0x and 'x' in C++?

本文关键字:什么 区别 中的 C++ 0x      更新时间:2023-10-16

我知道十六进制数在 C/C++ 语言中通常以 0x 为前缀。例如,0x5A 表示十进制中的 90。但是我看到了一个使用单引号字符和'x'的示例代码。

BYTE outputBuffer[index++] = 'x5A'; // instead of 0x5A

'x5A'的含义与0x5A完全相同吗?

如果是这样,为什么有十六进制表示法的替代方法?

对于一个角色来说,两者是相当平等的。

但只有一个可以与其他普通字符混合到一个字符串中。 "ABCx5A"

并且只有一个可以用来初始化一个大的整数类型:long long x = 0x1234567812345678LL;