在这个C拼图中要替换什么?

wha*_*cko 1 c arrays pointers

现在这是我从一些试卷中得到的一个愚蠢的谜题,遗憾的是我无法在过去的15分钟内弄明白.

#include <stdio.h>

int main(void){

    /* <something> */    

      putchar(*(wer[1]+1));
   return 0;
 }
Run Code Online (Sandbox Code Playgroud)

为了获得输出,e我们应该替换什么代替.现在我们知道putchar接受一个int参数,但是这个代码假定给出一个指针.这个问题是否有效?

Alo*_*hal 13

const char *wer[2] = { "failed", "test" };
Run Code Online (Sandbox Code Playgroud)


Dav*_*ley 8

由于a[i]*(a + i)定义相同,您可以将putchar()参数转换为wer[1][1].所以,类似的东西char *wer[2]将是一个令人满意的定义,以及任何wer[1][1] == 'e'可行的价值观.