谁能解释为什么会出现以下错误:
#define bla "\xA"
char a [2] = {0};
memcpy (a,bla,1); // a[0] = 0x0a <- Correct
//a[1] = bla; // '=' : cannot convert from 'const char [2]' to 'char'
谢谢,
马币
最佳答案
类型不同:a[1] 是一个字符,"\xA"是一个字符数组。
在 C++ 和 C 中,任何用双引号括起来的东西(包括什么都没有)都是 char 数组。
关于c++ - 在 C++ 中定义二进制宏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1167622/