Lorsque j'imprime un pointeur char avec printf()
, il prend la décision avec spécificateur de conversion si l'adresse doit être imprimée ou la chaîne entière en fonction de% u ou% s.pointeur char confondant avec cout en C++
Mais quand je veux faire la même chose avec cout
, comment va cout
décider ce qui devrait être imprimé parmi l'adresse et la chaîne entière? Voici une source d'exemple:
int main()
{
char ch='a';
char *cptr=&ch;
cout<<cptr<<endl;
return 0;
}
Ici, dans mon compilateur GNU, cout
tente de sortie ch comme une chaîne. Comment puis-je obtenir l'adresse ch
via cptr
en utilisant cout
?
Copie possible de l'argument [cout << avec l'argument char \ * imprime la chaîne, pas la valeur du pointeur] (http://stackoverflow.com/questions/17813423/cout-with-char-argument-prints-string-not-pointer -valeur) – GingerPlusPlus