C++ forbids converting a string constant to ‘char*’
时间: 2024-06-13 09:07:21 浏览: 201
高考英语重点词组固定搭配大全.docx
这个错误通常出现在将字符串常量赋值给 char* 类型的变量时。在 C++ 中,字符串常量是 const char* 类型的,而 char* 类型的变量不允许指向 const 类型的数据。因此,将字符串常量赋值给 char* 类型的变量会导致编译器报错。
解决这个问题的方法是将 char* 类型的变量改为 const char* 类型,或者使用 strcpy 函数将字符串常量复制到 char* 类型的变量中。
例如,下面的代码会导致上述错误:
```
char* str = "Hello, world!";
```
应该改为:
```
const char* str = "Hello, world!";
```
或者:
```
char str[] = "Hello, world!";
```
阅读全文