Warum wird beim Streaming eines Zeichenzeigers auf cout keine Adresse gedruckt?

Wenn ich einen Zeichenzeiger mit druckeprintf(), es trifft die Entscheidung mit dem Konvertierungsspezifizierer, ob die Adresse oder die gesamte Zeichenkette gemäß% u oder% s gedruckt werden soll.

Aber wenn ich dasselbe mit machen willcout, wie wirdcout Entscheiden Sie, was unter Adresse und ganzer Zeichenfolge gedruckt werden soll. Hier ist eine Beispielquelle:

int main()
{
  char ch='a';
  char *cptr=&ch;
  cout<<cptr<<endl;
  return 0;
}

Hier, in meinem GNU-Compiler,cout versucht, ch als String auszugeben.

Wie bekomme ich die Adresse vonch übercptr mitcout?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage