字符串问题,高手帮忙

来源:百度知道 编辑:UC知道 时间:2024/05/29 02:00:29
#include<iostream>
using namespace std;
void main()
{
char* ptr;
ptr="Zhang";
*(ptr+2)='e';
cout<<ptr<<endl;
}
调试正常,运行时提示.exe遇到问题需要关闭,点关闭,屏幕提示按任意键继续,不显Cheng为啥
明白了。刚学C++,问的问题有点低级,请原谅

ptr是个指向字符的指针变量,字符串"Zhang"存储在静态区,是只读不写的常量,你通过ptr对其进行修改显然是错误的。
想弄懂这问题,搞清楚在程序中各变量存储在什么区,各个区有什么样的特点就很好理解了。