【问题标题】:Explain the output of c Program解释c程序的输出
【发布时间】:2013-10-20 12:59:49
【问题描述】:
#include<stdio.h>

int main()
{
  int a=3;

  printf("%d"+1,a);
  return 0;
}

为什么这个程序的输出是"d"? 如果这个 int 说明符 (%d) 被 float (%f) 替换,那么它将输出为 "f"

请解释一下这段代码...

【问题讨论】:

    标签: c printf


    【解决方案1】:

    "%d" + 1&amp;"%d"[1] 相同,即指向字符串中第二个字符的指针。 printf 从那里开始将字符串解释为格式说明符,因此与 "d" 相同(并且第二个参数被简单地忽略)。

    【讨论】:

      猜你喜欢
      • 2014-09-07
      • 1970-01-01
      • 1970-01-01
      • 2012-06-23
      • 2017-07-19
      • 2015-12-07
      • 1970-01-01
      • 1970-01-01
      • 2014-06-29
      相关资源
      最近更新 更多