基本上我是一名 Java 程序员,对 C 中的指针不太了解。
所以,
#include<stdio.h>
int main( ){
char*______Time______ = "world";
printf("%s",_____Time_____);
return 0;
}
我猜这里的输出应该是: world ?
我应该知道这里有什么可怕的吗?
谢谢你的帮助。
基本上我是一名 Java 程序员,对 C 中的指针不太了解。
所以,
#include<stdio.h>
int main( ){
char*______Time______ = "world";
printf("%s",_____Time_____);
return 0;
}
我猜这里的输出应该是: world ?
我应该知道这里有什么可怕的吗?
谢谢你的帮助。
这应该打印“世界”,是的。
它看起来有点像是在尝试使用 GCC 内置预处理器符号__TIME__
,但这样做当然拼写错误。
我希望看到world
,但是您的 shell 可能会看到最后一个命令没有换行符结束,并且它可能会在新行开始提示之前添加一些东西来表示这一点。
并且不太了解 C 中的指针
指针是指向内存中特定地址的变量。
在这种情况下,它指向 的第一个字母"world"
,然后由printf()
all 打印,直到 NUL(自动插入到字符串的末尾)。
所以,回答你的问题:是的,输出将是“世界”。