¿Cuál es la diferencia específica entre a++ y ++a en lenguaje C?
a++ primero copia su propia copia y luego agrega una al valor verdadero.
++a suma uno al valor verdadero y luego usa el valor verdadero.
Ejemplo:
int a=0, b, c;
b = a++;
c = ++a;
printf("b=%d, c=%d", b, c);
El resultado de la ejecución del segmento del programa anterior es b=0, c=2, que puede probar la teoría. Cuando a++ y ++a se usan solos, equivalen a a=a+1.
Información ampliada:
Características del lenguaje C:
1. El lenguaje C es un lenguaje de bajo nivel para satisfacer las necesidades de programación del sistema. El lenguaje C proporciona acceso a conceptos a nivel de máquina (como bytes y direcciones) que otros lenguajes de programación intentan ocultar.
2. El lenguaje C es un lenguaje pequeño. En comparación con muchos otros lenguajes de programación, el lenguaje C proporciona un conjunto de funciones más limitado. (El lenguaje C completo se describe en sólo 49 páginas en la segunda edición del Manual de referencia de K&R). Para no tener características, el lenguaje C depende en gran medida de una "biblioteca" de funciones estándar.
3. C es un lenguaje inclusivo. C supone que los usuarios saben lo que están haciendo, por lo que proporciona un mayor grado de libertad que muchos otros lenguajes. Además, C no exige una verificación de errores detallada como otros lenguajes.