Il puntatore contiene sempre e solo l'indirizzo della variabile a cui punta, giusto?
Se lo stampo senza deferenziarlo, mi dovebbe dunque fornire un indirizzo di memoria...
Cosa c'e' di sbagliatonel codicequi sotto??
Come fa il primo elemento dell'array ad avere indirizzo "ciao pippo" ??????
Grazie!
codice:
#include <iostream>
using namespace std;
void stampa(char *b){
cout << "b = " << b << endl ;//mi stampa l'indirizzo contenuto nel puntatore *b, cioè...'pippo ciao'!
cout << "*b = " << *b;//mi stampa il contenuto dell'indirizzo puntato da b, cioè....p!
}
int main () {
char *a;
//assegna al puntatore l'indirizzo del primo elemento dell'array {"p","i","p","p","o"," ","c","i","a","o"}
a = "pippo ciao";
std::cout << "a = " << a << endl; //l'indirizzo di "p" è...'pippo'!!!
stampa(a);//passo l'indirizzo alla funzione stampa
return 0;
}