¿Cuál es la diferencia entre int * myptr ++ e int * (myptr ++) en C?


Respuesta 1:

Pregunta original: ¿Cuál es la diferencia entre int * myptr ++ e int * (myptr ++) en C?

la operación no tiene sentido porque está declarando un puntero int e intentando incrementarlo sin que apunte a nada.

Supongo que en realidad estás hablando de * myptr ++ vs * (myptr ++).

Estoy bastante seguro de que la respuesta es nada. Ambos devuelven el valor del puntero y luego lo incrementan. Se basa en la precedencia del operador (precedencia del operador C). Si estuviera leyendo el código, preferiría mucho el segundo. Es más claro cuál es la operación. También podría ayudarlo a detectar un error en el que realmente quería aumentar lo que apunta el puntero, es decir (* myptr) ++.