关于指向字符的指针的一个问题
#include <iostream>#include <string>
using namespace std;
int main()
{
char *ptr="1232412323";
while(*ptr!='\0'){
cout<<*ptr<<endl;
ptr++;
}
return 0;
}
为什么会爆出这个警告呢?
warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]| C++对类型要求比较严格,字符串常量是 const char *
把 const char * 赋值给 char * 就会报你那样的警告
在我的环境下不是报警告,而是直接报错
1>c:\visualstudioprojects\c++\c++\main.cpp(8): error C2440: “初始化”: 无法从“const char ”转换为“char *” 你的指针是一个常指针,不允许移动
页:
[1]