Declaración de cambio de lenguaje C
Para "La autoadición de A se ejecuta primero y luego se agrega, no se ejecutan otras declaraciones al agregar este programa A", no puede ver las declaraciones a++ y b++ en el programa. Después de la suma, los valores todavía se asignan a A y B, en lugar de a otras variables como c = a++; Los valores de cyz serán los mismos que en el libro de texto. En otras palabras, la salida printf final de este programa es el valor de A y B, pero los valores de A y B han cambiado durante el proceso de autoadición, lo que equivale a las declaraciones A = a++ y B = B++ .
Cambié tu programa. Puede ejecutar los dos programas y compararlos, y comprenderá por qué los valores de A y B son 2 y 1 al final. El procedimiento es el siguiente.
# incluir & ltstdio.h & gt
main()
{
int x=1, y=0, a =0, b=0, c=0, z = 0;
Interruptor (x)
{Caso 1:
Interruptor (y) p>
{
Caso 0: c = a++;
Caso 1: b++; >Caso 2: c=a++, z = b++; roto;
Caso 3: a++, b++;
}
printf("c=%d ,z=%d\n ",c,z);
}
¿Cuál es la diferencia entre ++i e i++?
En pocas palabras: ++i agrega los valores almacenados en I y "devuelve" el nuevo valor agregado a la expresión que lo usa, mientras que i++ agrega 1 a I, pero no aumenta el valor; valor original.