这个警告意味着你在对一个const指针赋值时,放弃了const限定符。可能是因为你尝试修改const限定的变量。解决方法是要么将变量声明为非const,要么在对const指针进行赋值操作时,使用强制类型转换来去除const限定。
以下是示例代码:
const int num = 5; const int *p = # //声明一个const指针指向常量num
int *q = p; //出现警告:“assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]”
//可以使用强制类型转换来去除const限定符 int q = (int) p;
//或者将变量声明为非const int num = 5; int *p = # //声明一个非const指针指向变量num
上一篇:编译警告:输出可能会在最后一个格式字符之前被截断[-Wformat-truncation=]
下一篇:编译警告:“多字符字符常量[-Wmultichar]”,转换时出现溢出从'int'到'char',ISOC++禁止将字符串常量转换为'char*'。