C | Operadores | Pregunta 5

#include <stdio.h>
int main()
{
    int i = 3;
    printf("%d", (++i)++);
    return 0;
}

¿Cuál es la salida del programa anterior?
(A) 3
(B) 4
(C) 5
(D) Error en tiempo de compilación

Respuesta: (D)
Explicación: En C, los operadores de prefijo y sufijo necesitan el valor l para realizar la operación y devolver el valor r. La expresión (++i)++ cuando se ejecuta incrementa el valor de la variable i(i es un valor l) y devuelve el valor r. El compilador genera el error (se requiere valor l) cuando intenta incrementar posteriormente el valor de un valor r.

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 *