C - Получить адрес указателя на строку - PullRequest
0 голосов
/ 08 ноября 2018

Я пытаюсь перекодировать функцию printf. Я застрял на флаге %p. Как известно, флаг %p печатает адрес указателя. Проблема в том, что я хотел бы получить этот адрес в символьной строке (char *), чтобы распечатать его. Есть ли способ получить адрес?

Спасибо.

1 Ответ

0 голосов
/ 08 ноября 2018

Вы, вероятно, потерялись в том, что является указателем.

Рассмотрим этот код: char *foo = "bar";

Здесь foo - указатель. Указатель - это просто переменная, которая содержит адрес некоторого пространства в памяти. Здесь foo - указатель на строку «bar». Кроме того, адреса в памяти не являются волшебными, они сами по себе являются числом. Так что вам просто нужно напечатать число, хранящееся в вашей переменной.

Не имеет значения, это не разумный шаг, чтобы опубликовать вопрос о школьном проекте, на ваше настоящее имя, с контекстом. Это может позволить другим студентам или, что еще хуже, вашей администрации обнаружить, что вы не выполняли свои личные проекты самостоятельно.

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