Hola buenas, sabriais decirme como puedo acceder al valor de esta variable?
*(int *)cfgE[i].varPtr=(int) atoi (search)
Es un doble puntero o k es??
varPtr tambien es puntero
| |||
como puedo acceder a esta variable Hola buenas, sabriais decirme como puedo acceder al valor de esta variable? *(int *)cfgE[i].varPtr=(int) atoi (search) Es un doble puntero o k es?? varPtr tambien es puntero |
| |||
Respuesta: como puedo acceder a esta variable no es un doble puntero. tanto cfgE y varPtr son punteros. Pero por la precedencia de los operadores no hace falta usar parentesis. Esto es hace... cfgE es un puntero. Por la precedencia de "[ ]" se desreferencia cfgE a su posicion i. Luego le llega el turno al "."(Punto). Por lo tanto, de la "estructura" que dio cfgE[i] se toma el parametro "varPtr". A eso se lo castea a "puntero a entero" y se desreferencia. Parece un lio barbaro, pero es cuestio de agarrar una tabla de precedencia y ver que se ejecuta primero. |
Etiquetas: |