warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

一、错误代码展示

函数定义:

void readImage(char *inputPath);

函数使用:

 readImage("C:\\xxxx\\girl.jpg");

 

二、原因分析

  在上面的方法中,方法的参数需要我们传递一个指针类型的字符。而我们在使用该方法的时候传递的确实一个常量。会导致常量强转为指针,因为会报这么一个警告。这个警告在有些编译器上就直接通不过了,有些编译器上可以通过。

三、解决办法

  解决办法也非常的简单,如下所示:

  

 char *inputPath = (char*)"C:\\xxx\\girl.jpg";
    readImage(inputPath);

 

posted on 2021-06-02 14:16  飘杨......  阅读(8332)  评论(0)    收藏  举报