【发布时间】:2017-03-25 21:07:08
【问题描述】:
我正在学习 const 和使用示例的指针。从this thread 我读到: const char* the_string :我可以更改 the_string 指向的字符,但我不能修改它指向的字符。
int main()
{
const char* a = "test";
char* b = "other";
a = b;
cout << a << endl; //prints "other"
}
为什么我可以修改a点的哪个字符?
【问题讨论】:
-
a是一个指针。它用于引用一些数据(在本例中为char数组)。指针与它们指向的数据是分开的实体,因此它们经常成为混淆我们是在谈论指针还是数据的来源。在这种情况下,const指的是 数据。它也不必引用指针。 -
为什么要重新提出这个问题?这与链接的问题完全相同,并且链接的问题有很好的答案。
-
我做到了。 @Barry 你可能是这个网站上最聪明的人之一,如果不是 the 最聪明的人,那么对你来说显而易见的事情可能对其他人来说不是。我认为复制品对于金锤来说不够“明显”。
-
@Bathsheba Ha。我不知道该如何回应。我绝对不是这个网站上最聪明的人之一。
标签: c++ pointers char constants