我有一个希望有人可以用比我已经遇到的更简单的术语向我解释的微不足道的问题。在工作中
C++ 之旅(第二版)
我一直在尝试几个例子。
我目前正在尝试在单独的函数中修改指向字符串文字的指针(我认为这很容易.....)。
using namespace std;
void test(char *ptr)
{
ptr = "test";
}
int main()
{
char *p = "abc";
test(p);
cout << p << "\n";
return 0;
}
使用 g++ 编译时,我得到一个
警告:ISO C++ 禁止将字符串常量转换为 char*
显然 g++ 正在自动将 *p 转换为 const?当然我错过了一些基本的东西,但我以前的 SO 和谷歌搜索让我离答案更近了。谢谢您的反馈!
编辑:下面两个很好的例子。谢谢大家的回复,很有帮助!