C | Puntero avanzado | Pregunta 1 – Part 1

void fun(int *p)  {    int q = 10;    p = &q;  }           int main()  {    int r = 20;    int *p = &r;    fun(p);    printf(«%d», *p);    return 0;  } (A) 10 (B) 20 (C) Error del compilador (D) Error de tiempo de ejecución Respuesta: (B) Explicación: Inside fun(), q es una copia del puntero … Continue reading «C | Puntero avanzado | Pregunta 1 – Part 1»

C | String | Pregunta 4

¿Predecir la salida? #include <stdio.h> int fun(char *str1) {   char *str2 = str1;   while(*++str1);   return (str1-str2); }    int main() {   char *str = «GeeksQuiz»;   printf(«%d», fun(str));   return 0; } (A) 10 (B) 9 (C) 8 (D) Número aleatorio Respuesta: (B) Explicación: La función fun() básicamente cuenta el número de caracteres en la string de … Continue reading «C | String | Pregunta 4»

Cuestionario C – 105 | Pregunta 1

Elija la mejor declaración con respecto a los siguientes tres fragmentos de programa. <br> /*Program Snippet 1 with for loop*/<br> for (i = 0; i < 10; i++)<br> {<br>    /*statement1*/<br>    continue;<br>    /*statement2*/<br> }<br>    /*Program Snippet 2 with while loop*/<br> i = 0;<br> while (i < 10)<br> {<br>    /*statement1*/<br>    continue;<br>    /*statement2*/<br>    i++;<br> }<br>    /*Program … Continue reading «Cuestionario C – 105 | Pregunta 1»

Cuestionario C – 101 | Pregunta 1

Suponga que en un fragmento de programa C, se utilizan las siguientes declaraciones. i) sizeof(int); ii) sizeof(int*); iii) sizeof(int**); (A) Solo i) se compilaría con éxito y devolvería el tamaño como 4. (B) i), ii) y iii) se compilaría con éxito y el tamaño de cada uno sería el mismo, es decir, 4 (C) i), … Continue reading «Cuestionario C – 101 | Pregunta 1»

C | Varios | Pregunta 8

¿Salida de debajo del código C? Suponga que int ocupa 4 bytes. #include<stdio.h> int x = 5; int main() {     int arr[x];     static int x = 0;     x = sizeof(arr);     printf(«%d», x<<2);     return 0; } Gracias a Gokul Kumar por contribuir con esta pregunta. (A) Error del compilador en la línea «static int x = … Continue reading «C | Varios | Pregunta 8»

Cuestionario C – 106 | Pregunta 5

Para el siguiente «typedef» en C, elija la mejor declaración typedef int INT, *INTPTR, ONEDARR[10], TWODARR[10][10]; (A) Causará un error de compilación porque typedef se usa para definir múltiples alias de tipos incompatibles en la misma declaración. (B) «INT x» definiría x de tipo int. La parte restante de la declaración sería ignorada. (C) «INT … Continue reading «Cuestionario C – 106 | Pregunta 5»

Cuestionario C – 108 | Pregunta 2

Cualquiera de los siguientes puede usarse para declarar un Node para una lista enlazada individualmente. Si usamos la primera declaración, “struct node * nodePtr;” se usaría para declarar un puntero a un Node. Si usamos la segunda declaración, “NODEPTR nodePtr;” se puede utilizar para declarar un puntero a un Node. /* First declaration */ struct … Continue reading «Cuestionario C – 108 | Pregunta 2»

Cuestionario C – 112 | Pregunta 2

Elija la mejor declaración para el siguiente fragmento de programa: struct {int a[2];} arr[] = {1,2}; (A) No hay error de compilación y creará una array arr de 2 elementos. Cada uno de los elementos de arr contiene un campo de estructura de array int de 2 elementos. Arr[0]. a[0] sería 1 y arr[1].a[0] sería … Continue reading «Cuestionario C – 112 | Pregunta 2»

Compilación de un programa C: – Detrás de escena

C es un lenguaje de nivel medio y necesita un compilador para convertirlo en un código ejecutable para que el programa pueda ejecutarse en nuestra máquina.  ¿Cómo compilamos y ejecutamos un programa en C? A continuación se muestran los pasos que usamos en una máquina Ubuntu con el compilador gcc.   Primero creamos un programa en … Continue reading «Compilación de un programa C: – Detrás de escena»