Как отобразить адрес постоянного указателя символа - PullRequest
1 голос
/ 18 июня 2020

Так же, как это может быть сделано для целых чисел и числовых данных, когда указатель создается и отображается следующим образом

char string[20] = "string";
char *stringaddress = string;
const char *stringcopy = "string";
cout << "The string is " << stringaddress << endl;
cout << "The address of string is " << *stringaddress << endl;
cout << "The stringcopy is " << stringcopy << endl;

Как я могу получить адрес строки по указателям, а не только по строке, есть ли способ или другой метод для этого?

1 Ответ

0 голосов
/ 18 июня 2020

Оператор вывода << обрабатывает все указатели на char как указатель на первый символ строки с завершающим нулем.

Чтобы напечатать сам адрес, вам нужно привести его к void* :

cout << "The address of string is " << static_cast<void*>(stringaddress) << '\n';

Обратите внимание, что *stringaddress в точности равно stringaddress[0], который является первым символом в строке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...