C语言的程序片段:

 

p =0;

printf(
"%d\n%d\n", p, p+1);

结果会是什么呢?

0

呵呵,上当了吧,此题是无解的,因为我没说p是什么东西。下面我告诉你p是什么:

 

int (*p)[1024];
p
=0;

printf(
"%d\n%d\n", p, p+1);

 

 

结果是:

0

4096

这个结果对么?

不一定。还得看它的运行平台。上面的结果是32位Intel平台的,64位的呢?单片机呢?DSP呢?

欢迎有条件的朋友试一试。

最后来个完整的:

 

#include <stdio.h>

int main()
{
int (*p)[1024];
p
=0;
printf(
"%d\n%d\n", p, p+1);
printf(
"%d\n%d\n", (int)p, (int)p+1);
printf(
"%d\n%d\n", (int)p, (int)(p+1));

return0;
}

 

 

 结果是:

0
4096
0
1
0
4096

相关文章:

  • 2021-11-03
  • 2022-12-23
  • 2021-09-24
  • 2021-09-12
  • 2022-12-23
  • 2022-12-23
  • 2022-02-24
  • 2022-12-23
猜你喜欢
  • 2021-09-08
  • 2021-11-18
  • 2022-12-23
  • 2021-07-02
  • 2022-12-23
  • 2021-10-21
  • 2021-06-19
相关资源
相似解决方案