#include<stdio.h> int main() { char str[] = "GeeksQuiz"; printf("%s %s %s\n", &str[5], &5[str], str+5); printf("%c %c %c\n", *(str+6), str[6], 6[str]); return 0; }
(A) Error de tiempo de ejecución
(B) Error del compilador
(C) uiz uiz uiz
u uu
(D) Cuestionario Cuestionario Cuestionario
u uu
Respuesta: (D)
Explicación: El programa no tiene ningún error. Todas las siguientes expresiones significan lo mismo
&str[5]
&5[str]
str+5
Dado que el compilador convierte la operación de array en punteros antes de acceder a los elementos de la array, todo lo anterior da como resultado la misma dirección.
Del mismo modo, todas las siguientes expresiones significan lo mismo.
*(string+6)
string[6]
6[string]
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