Red de conocimiento informático - Computadora portátil - En lenguaje C, int i = 1, i, ¿por qué el valor de esta expresión es diferente del valor de la variable i? ¿Cuáles son los valores de la expresión y el valor de la variable respectivamente?

En lenguaje C, int i = 1, i, ¿por qué el valor de esta expresión es diferente del valor de la variable i? ¿Cuáles son los valores de la expresión y el valor de la variable respectivamente?

1. En primer lugar, la expresión es la unidad básica que constituye un enunciado. Las expresiones en lenguaje C son fórmulas unidas por operadores. Los objetos encadenados pueden ser constantes, variables o llamadas a funciones. La división de expresiones está determinada por operadores. Las fórmulas vinculadas por operadores aritméticos se denominan expresiones aritméticas; las fórmulas vinculadas por operadores relacionales se denominan expresiones relacionales.

El valor de la expresión es el resultado de la operación de expresión. Cualquier expresión tendrá un valor y su tipo es una constante, lo que significa que el valor de la expresión mínima es de un tipo determinado. Una constante, una expresión aritmética cuyo valor es una constante plástica o una constante de punto flotante, una expresión relacional o una expresión lógica cuyo valor es una cantidad lógica de 0 o 1. En segundo lugar, una expresión por coma es un conjunto de expresiones separadas por comas que se evalúan de izquierda a derecha. El resultado de una expresión de coma es el valor de su expresión situada más a la derecha. Si el operando más a la derecha es un valor l, entonces el valor de la expresión de coma también es un valor l.

Otros operadores en C que especifican el orden en el que se evalúan los operandos son el operador condicional (? :) y el operador de coma. Aparte de esto, otros operadores no especifican el orden en el que se evalúan sus operandos.

3. Finalmente, aquí se utiliza el operador de incremento. Hay dos formas de operadores de incremento: prefijo y postfijo. La operación anteponer produce un valor l y devuelve el valor modificado del operando después de agregar 1 al operando. La operación postadd produce un rvalue que suma 1 al operando pero devuelve el valor original del operando sin cambios.