📜  门| GATE CS 2018 |简体中文第33章

📅  最后修改于: 2021-06-29 04:09:35             🧑  作者: Mango

考虑下面的C程序。

#include 
struct Ournode {
  char x, y, z;
};
  
int main() {
  struct Ournode p = {'1', '0', 'a' + 2};
  struct Ournode *q = &p;
  printf("%c, %c", *((char *)q + 1), *((char *)q + 2));
  return 0;
}

该程序的输出为:

(A) 0,c
(B) 0,a + 2
(C) ‘0’,’a + 2′
(D) ‘0’,’c’答案: (A)
说明: ‘a’+ 2将是’c’,因此Ournode p = {‘1’,’0’,’c’},输出将是0,c。

请参阅:在C中存储字符串, 字符串。

选项(A)是正确的。这个问题的测验