當前位置:編程學習大全網 - 編程軟體 - c++編程錯誤“invalid conversion from 'char*' to 'char' [-fpermissive]

c++編程錯誤“invalid conversion from 'char*' to 'char' [-fpermissive]

invalid conversion from 'char*' to 'char' [-fpermissive]|錯誤的意思是給的字符串太長,字符數組存不下。

這裏報錯

char orange[5]={orange}; <--錯誤在這裏報出

char ORANGEH[5]={ORANGE}; <--錯誤在這裏報出

應改成:

char?orange[]="orange";

char?ORANGE[]="ORANGE";

擴展資料:

const char*向char*的轉換是不允許的。

使用Qt來舉個例子:

QString qstr("This is a test!");

char* str = qstr.toStdString.data();

這樣就會報上面的錯了,如果換成:

QString qstr("This is a test!");

const char * str? = qstr.toStdString.data();

這就沒有錯了。很顯然,qstr.toStdString.data的返回值是const char*型。

這樣就帶來壹個麻煩,就是如果我們要對str進行修改什麽操作的話就不可行了,只能另外再建立壹個字符數組來復制str所指向的字符串了。

  • 上一篇:
  • 下一篇:為什麽凱迪拉克賽威軟件編程後黑屏
  • copyright 2024編程學習大全網