[Error] invalid conversion from 'char*' to 'int' [-fpermissive]C语言报错
时间: 2024-06-04 21:10:16 浏览: 118
这个错误是因为在程序中将一个 `char*` 类型的指针赋值给了 `int` 类型的变量。C语言中不允许将指针类型直接赋值给非指针类型。
需要检查一下程序中是否有这样的赋值操作,如果有,可以考虑将其改为适当的类型转换,例如使用 `atoi` 函数将字符串转换为整数类型,或者使用 `sprintf` 函数将整数类型转换为字符串类型。
另外,建议在编译时开启 `-Wall` 和 `-Werror` 选项,这样可以更容易地发现代码中的错误,并将警告转换为错误,避免造成潜在的问题。
相关问题
);//调用删除函数 显示26 19 D:\C语言\C语言课后作业\实验13.5.cpp [Error] invalid conversion from 'const char**' to 'char**' [-fpermissive]
这个错误是因为 `del_name` 函数的参数类型是 `char **`,表示一个指向指针数组的指针,而 `name` 数组的类型是 `const char *` 指针数组,表示一个指向只读字符串常量的指针数组,两者类型不匹配。
为了解决这个错误,你可以修改 `del_name` 函数的参数类型为 `const char **`,表示一个指向只读字符串常量的指针数组的指针,代码如下:
```
int del_name(const char **name, int n)
{
//...
}
```
这样修改后,编译器就不会再报错了。
71 16 C:\Users\86152\Documents\c语言(1)\通讯录.cpp [Error] invalid conversion from 'char' to 'int*' [-fpermissive]
这个错误的原因是你在将一个字符类型转换成了整型指针类型,而这是不允许的。
例如,下面的代码就会出现这个错误:
```c++
char c = 'a';
int* p = c; // 错误:无法将字符类型转换成整型指针类型
```
解决这个问题,你需要将字符类型转换成整型类型,或者将整型指针类型改为字符指针类型,具体取决于你的代码逻辑。
阅读全文