现在这是我从一些试卷上得到的一个愚蠢的谜题,很遗憾,我无法从过去的15分钟里找出答案。

#include <stdio.h>

int main(void){

    /* <something> */

      putchar(*(wer[1]+1));
   return 0;
 }

为了得到e的输出,我们应该替换什么来代替某些东西。现在我们知道putchar接受一个int作为参数,但是这段代码假设给出一个指针。这个问题是否有效?

最佳答案

由于a[i]与定义上的*(a + i)相同,您可以将putchar()参数转换为wer[1][1]所以,像char *wer[2]这样的定义是令人满意的,任何这样的值都可以工作。

09-07 22:18