后面的programm的输出为什么是“ 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;
}
您无需修改任何字符串,只需修改参数即可a
。
首先,它是指向传递值的指针,然后是程序中的字符串常量的指针。
您不能更改传递的字符串数据,但是更改指针是可以的。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句