Почему потоковый указатель на символ cout не печатает адрес?
Когда я печатаю указатель на символ сprintf()
, он принимает решение с помощью спецификатора преобразования, должен ли адрес печататься или вся строка в соответствии с% u или% s.
Но когда я хочу сделать то же самое сcout
, как будетcout
решить, что должно быть напечатано среди адреса и всей строки? Вот пример источника:
int main()
{
char ch='a';
char *cptr=&ch;
cout<<cptr<<endl;
return 0;
}
Здесь, в моем компиляторе GNU,cout
пытается вывести ch в виде строки.
Как я могу получить адресch
с помощьюcptr
с помощьюcout
?