【发布时间】:2015-06-05 11:37:59
【问题描述】:
为什么下面程序的输出是“pankaj”,我期待一个编译错误,比如“无法修改常量字符串”
#include<iostream>
using namespace std;
void fun(const char *a)
{
a = "pankaj";
cout << a;
}
int main()
{
const char *ptr = "GeeksforGeeks";
fun(ptr);
return 0;
}
【问题讨论】:
-
你没有修改 string 你修改了 pointer 指向 string i> 使其指向不同的 string.
标签: c++