int8_t*和char*

zer*_*int 3 c++ char-pointer

为什么声明const int8_t* cstr = "asdf";会出错

invalid conversion from ‘const char*’ to ‘const int8_t*’

是不是int8_t*char*一样吗?我在这里错过了一些微妙的东西吗?!

Who*_*aig 5

const signed char*是不一样的const char*.检查您的编译设置,因为这可以解释它.int8_t永远(永远不会说永远不会=至少在我见过的所有地方)被定义为signed char.

  • `signed char`**永远不会和`char`相同.它们总是不同的类型. (3认同)
  • @zeropoint`ch​​ar`将被签名或无符号,但无论如何仍然是`signed char`和`unsigned char`的不同类型.这与C++中常见的类型具有相同的意义. (2认同)