4 10 D:\C\15.9-1.C [Warning] deprecated conversion from string constant to 'char*' [-Wwrite-strings]
时间: 2024-04-10 10:28:20 浏览: 121
浅析string 与char* char[]之间的转换
5星 · 资源好评率100%
根据您提供的警告信息,编译器发出了一个警告,警告信息是 "deprecated conversion from string constant to 'char*'",意思是将字符串常量转换为 `char*` 是不推荐的。
在您的代码中,您将字符串常量 "01001001" 赋值给了 `char*` 类型的指针 `p`。然而,C语言中的字符串常量是不可修改的,因此应该使用 `const char*` 类型来声明指向字符串常量的指针。
为了解决这个警告,您可以将指针 `p` 的声明更改为 `const char* p = "01001001";`,这样就可以避免将字符串常量转换为 `char*` 的警告。
修正后的代码如下所示:
```c
int main() {
const char* p = "01001001";
int number = 0;
Binary_conversion(p[1]);
return 0;
}
```
请注意,这只是解决了警告问题,并没有解决 `Binary_conversion` 函数的问题。如果您需要关于 `Binary_conversion` 函数的更多帮助,请提供更多的代码或相关信息。
阅读全文