PROBLEMA Puntatori in c dubbio a livello macchina

Pubblicità
Invece di postare immagini, ti consiglio di usare il tag code.

No, quello che hai scritto non ha senso.
's' e' un puntatore, quindi e' corretti assegnarli l'indirizzo di una variabile, nel tuo caso 'c'
Ma anche le altri variabili sono puntatori, se a loro assegni il valore di 's', ovviamente tutte loro punteranno all'indirizzo di 'c' nel modo in cui le assegni.
Per fare uso di quelli che vuoi fare tu, devi dichiarare 'puntatori a puntatori' per esempio

Codice:
char c = 'a';
car *p1, **p2;
p1 = &a;
p2 = &p1;

a quel punto per stampare la variabile 'c' puoi usare *p1 o **p2
 
Invece di postare immagini, ti consiglio di usare il tag code.

No, quello che hai scritto non ha senso.
's' e' un puntatore, quindi e' corretti assegnarli l'indirizzo di una variabile, nel tuo caso 'c'
Ma anche le altri variabili sono puntatori, se a loro assegni il valore di 's', ovviamente tutte loro punteranno all'indirizzo di 'c' nel modo in cui le assegni.
Per fare uso di quelli che vuoi fare tu, devi dichiarare 'puntatori a puntatori' per esempio

Codice:
char c = 'a';
car *p1, **p2;
p1 = &a;
p2 = &p1;

a quel punto per stampare la variabile 'c' puoi usare *p1 o **p2

assegnare il valore di s a w (w = s) in questo caso vuol dire passagli l'indirizzo di memoria di s o di a?
 
L’assegnazione è sempre per valore quando la variabile è di tipo semplice. Infatti per assegnare l’indirizzo devi specificatamente usare il simbolo del indirizzo (ossia il &).
 
Pubblicità
Pubblicità

Discussioni Simili

Indietro
Top