c语言是个很麻烦的东西,直接使用
char* tmp = "hello";
是错误的,因为"hello"是个常量字符串。
可以使用以下方法进行赋值:
#include<iostream>
using namespace std;
int main() {
char* tmp1;
char tmp2[12] = "hello,word!"; //这里的12指的是11(字符数)+1(结束符)
tmp1 = tmp2;
cout << tmp1;
}
解释一下上面代码,有c++基础的应该知道tmp2其实是一个指针,它的类型也是char*,指针的内容是地址,这里只不过是让tmp1指针的内容和tmp2指针的内容一样都指向了字符串 “hello,word!”。