此刻,我在学习C之后正在学习C ++,并且试图将我的一些代码从C编译为C ++,并且遇到了一种我想了解更多的现象。
int main()
{
const char c = 'A';
char* char_ptr = (char*)&c;
*char_ptr = 'B';
printf("%c, %c\n", c ,*char_ptr);
return 0;
}
在C中,输出为B,B,这对我来说很有意义,因为char_ptr更改了c地址中的值。但是在C ++中,输出A,B似乎有2个不同的实体。