Cuestionario C – 108 | Pregunta 5

En un archivo C (digamos sourcefile1.c), una array se define de la siguiente manera. Aquí, no necesitamos mencionar explícitamente el tamaño del arreglo de array en [] porque el tamaño estaría determinado por la cantidad de elementos utilizados en la inicialización.

int arr[] = {1,2,3,4,5};

En otro archivo C (digamos sourcefile2.c), la misma array se declara para su uso de la siguiente manera:

extern int arr[];

En sourcefile2.c, podemos usar sizeof() en arr para averiguar el tamaño real de arr.
(A) VERDADERO
(B) FALSO

Respuesta: (B)
Explicación: Lo primero es lo primero, el operador sizeof() funciona en tiempo de compilación. Por lo tanto, el uso de sizeof en arr en sourcefile2.c no funcionará porque arr en sourcefile2.c es un tipo incompleto. Tenga en cuenta que arr en sourcefile1.c es un tipo completo porque el tamaño de la array se determinó en el momento de la compilación debido a la inicialización.
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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *