Elija la mejor declaración para el siguiente programa:
#include "stdio.h" int main() { struct {int i; char c;} myVar = {.c ='A',.i = 100}; printf("%d %c",myVar.i, myVar.c); return 0; }
(A) Error de compilación porque el tipo de estructura (que contiene dos campos de tipo diferente, es decir, un int y un char) se ha mencionado junto con la definición de myVar de ese tipo de estructura.
(B) Error de compilación debido a una sintaxis incorrecta de inicialización de myVar. Básicamente, el miembro del operador (es decir, punto) se ha utilizado sin myVar.
(C) Error de compilación no solo para B sino también para el orden incorrecto de los campos en myVar, es decir, el campo c se ha inicializado primero y luego el campo i se ha inicializado.
(D) No hay error de compilación e imprimirá 100 A.
Respuesta: (D)
Explicación:Según el lenguaje C, la inicialización de una variable de tipo de datos completo se puede realizar en el momento de la propia definición. Además, los campos/miembros de la estructura se pueden inicializar fuera de orden usando el nombre del campo y usar el operador de punto sin myVar está bien según C. La respuesta correcta es D.
Cuestionario de esta pregunta
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA