¡Sobre el tema de la asignación de punteros en lenguaje C!
* x = a; * y = b;
Las variables puntero X, Y no están inicializadas y son inciertas Los valores (valor basura) se almacenan en una variable. El acceso indirecto a una ubicación de memoria no especificada es ilegal. Entonces "* x = a; * y = b;" es ilegal. "* x = & ampa; * y = & ampb;" De manera similar, aquí se ignora temporalmente si los tipos en ambos lados del número de asignación "=" son compatibles.
int a=3, b=4, *x, * y;
x = &a;y=&b;//&A, A&B respectivamente Obtiene las direcciones de las variables A y B, y luego asigne valores a las variables de puntero X e Y.
En este momento, x apunta a A (x almacena la dirección de A), y apunta a by A puede se puede acceder a través de *x (* x y A son equivalentes), en este caso * x y A representan la misma ubicación de almacenamiento. Entonces lo que escribiste al final es correcto. Recuerde, antes de dirigir un puntero, asegúrese de que apunte a una ubicación de memoria clara.