0

我正在浏览一个包含以下代码的站点,接下来的问题是,预期的输出是什么?

#include<stdio.h>
main()
{
    char *foo = "Arista Netowrks";
    char *bar = "Arista Netowrks";
    printf("%d %d\n",foo,bar);
}

给出的答案是两个地址都是一样的。由于字符串是只读的,因此它们在只读内存中将表现为全局常量。我精通C,但这完全让我措手不及。如果有人可以详细说明上述答案,我将不胜感激。我了解该地址将被打印,并且我了解它的只读存储器。但是,如果它是在函数内声明的,它如何充当全局常量,并且两个变量如何指向它?

资料来源:GeeksforGeeks.org

4

0 回答 0