printf字符打印的意外结果

时间:2014-04-04 18:16:16

标签: c printf character

#include<stdio.h>
main()
{
  printf("%c\n",1-3+2["nexus"]);
}

结果是 v 。结果怎么样?
缩进(正方形)有什么作用?

2 个答案:

答案 0 :(得分:0)

2 [&#34; nexus&#34;]可能会引导我们将3个元素视为关联                字符数组[arr [2] = x在我们的例子中]

以下是1-3viz -2添加到x字符,即添加到ascii值              相应的元素是v

无法准确找出方形标识的真正含义,但根据oput这是可能的方式。

答案 1 :(得分:0)

2 [&#34; nexus&#34;]与&#34; nexus&#34; [2] 相同,它们对应于此字符串的第二个索引或第三个元素。 (这是&#39; x&#39;这里)。

在等式中,1-3 + 2 [&#34; nexux&#34;]类似于1-3 +&#39; x&#39;代表&#39; v&#39;。

注意

当字符串被声明为&#34; nexus&#34;。

nexus[0] is 'n'
nexus[1] is 'e'
nexus[2] is 'x'
nexus[3] is 'u'
nexus[4] is 's'