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