关于指针和数组的一个疑问#include<iostream>using namespace std;int main(){char *p = "kitty";p[0] = 'H';cout << p << endl;return 0;}在visual studio 2005 下运行竟然没出错,直接输出:kitty,求解释![解决办法]貌似编译器做优化, 直接用 "kitty" 来替换 p 了, 变成了 cout << "kitty" << endl;