int main()
{
const char str[]="Apple";
char* p=(char*)str;
p[4]=0;
cout<< p;
return 0;
}
배열 str을 잡을때 const를 붙여서 쓰기를 못할 줄 알았는데,
str을 p에 캐스팅해서 치환하고 p로 배열 str에 접근해서
널문자를 넣으니까, 잘 넣어지더라구요..
p나 str이나 같은 메모리를 가리키고 있고, 그 메모리는 const 특성이
있어서 둘다 똑같이 써지지 않아야 되는게 아닌가요??
왜 위의 코드가 잘 돌아갈까요??
|