简体   繁体   English

从“ const BYTE * {aka const unsigned char *}”到“ BYTE_PTR {aka unsigned char *}”的无效转换

[英]invalid conversion from ‘const BYTE* {aka const unsigned char*}’ to ‘BYTE_PTR {aka unsigned char*}’

I don't know why g++ compiler gives me error when compiling this code: 我不知道为什么g ++编译器在编译此代码时给我错误:

typedef unsigned char BYTE;
typedef BYTE* BYTE_PTR;

const BYTE myByte[] = {0x00, 0xFF};
const BYTE_PTR myByte_ptr = myByte;

compiler gives me this error: 编译器给我这个错误:

error: invalid conversion from ‘const BYTE* {aka const unsigned char*}’ to ‘BYTE_PTR {aka unsigned char*}’ [-fpermissive]

But this code is OK 但是这段代码还可以

const BYTE myByte[] = {0x00, 0xFF};
const unsigned char* myByte_ptr = myByte;

Duplicate of typedef pointer const weirdness typedef指针const怪异的重复

And in short: const BYTE_PTR is actually unsigned char* const , but not const unsigned char* . 简而言之: const BYTE_PTR实际上是unsigned char* const ,但不是const unsigned char*

That's why the compiler complains. 这就是编译器抱怨的原因。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 从cql :: cql_byte_t * {aka unsigned char *}到const char *的无效转换 - invalid conversion from cql::cql_byte_t* {aka unsigned char*} to const char* 错误:从 'void*' 到 'const uint8_t* {aka const unsigned char*}' [-fpermissive] 的无效转换 - error: invalid conversion from 'void*' to 'const uint8_t* {aka const unsigned char*}' [-fpermissive] 从“const char*”到“uint32_t {aka unsigned int}”的无效转换[-fpermissive] - invalid conversion from ‘const char*’ to ‘uint32_t {aka unsigned int}’ [-fpermissive] 从'const char *'到'unsigned char *'的转换无效 - Invalid conversion from ‘const char*’ to ‘unsigned char*’ 无效的转换const unsigned char - invalid conversion const unsigned char 从'BYTE * {aka unsigned char *}'转换为'DWORD {aka long unsigned int}'会失去精度[-fpermissive] - cast from 'BYTE* {aka unsigned char*}' to 'DWORD {aka long unsigned int}' loses precision [-fpermissive] 从'const char *'到'ItemType {aka char}'的无效转换[-fpermissive] - Invalid conversion from 'const char*' to 'ItemType {aka char}' [-fpermissive] 错误:从'unsigned char *'到'constsigned char *'的无效转换 - error: invalid conversion from 'unsigned char*' to 'const signed char*' EVP_DigestUpdate和“从'unsigned char *'到'const char *'的无效转换” - EVP_DigestUpdate and “invalid conversion from ‘unsigned char*’ to ‘const char*’” C ++从'char *'到'const unsigned char *'的无效转换 - C++ invalid conversion from ‘char*’ to ‘const unsigned char*’
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM