Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.03.2014, 17:06   #1
zla9_kolu4ka
Форумчанин
 
Регистрация: 16.09.2013
Сообщений: 149
По умолчанию введение адреса с помощью scanf

Как правильно ввести адрес, чтобы нормально заработала??

Код:
#include <stdio.h>

int main(){

	char* p;
	printf("Vvedite adress: ");
	scanf("%p",&p);
	printf("Po etomu adresu hranits9 zna4enie%p is %c\n", p, *p);

	char ch = getchar();
	return 0;
}
zla9_kolu4ka вне форума Ответить с цитированием
Старый 26.03.2014, 17:49   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Для начала char p[255];
А потом читаем описание scanf особенно про спецификаторы и меняем %p на другой спецификатор, который подходит для ввода строк: http://msdn.microsoft.com/en-us/library/6ttkkkhh.aspx (10 строка в таблице)
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 26.03.2014, 18:18   #3
Somebody
Участник клуба
 
Регистрация: 08.10.2007
Сообщений: 1,185
По умолчанию

Так адрес же надо, а не строку. В C99/C11 %p есть. Так что для gcc вроде должно быть нормально. Формат строки с адресом implementation defined, но в любом случае такой же, в каком его выводит printf.
Somebody вне форума Ответить с цитированием
Старый 26.03.2014, 18:26   #4
zla9_kolu4ka
Форумчанин
 
Регистрация: 16.09.2013
Сообщений: 149
По умолчанию

Цитата:
Так адрес же надо, а не строку. В C99/C11 %p есть. Так что для gcc вроде должно быть нормально. Формат строки с адресом implementation defined, но в любом случае такой же, в каком его выводит printf.
как правильно адрес в консоли ввести, у меня исключение выдает
zla9_kolu4ka вне форума Ответить с цитированием
Старый 26.03.2014, 19:44   #5
Somebody
Участник клуба
 
Регистрация: 08.10.2007
Сообщений: 1,185
По умолчанию

Так не вводи первый попавшийся адрес - не по любому адресу читать можно. Попробуй, например
Код:
printf("%p", "q");
и введи этот адрес - там должно быть "q".
Somebody вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Известны фамилии,адреса и телефоны 25-ти человек,Найти фамилии и адреса людей,чей телефон начинается с цифры 3. Расмотреть два слу salomon93 Паскаль, Turbo Pascal, PascalABC.NET 11 01.12.2011 23:36
статья - Введение в Scheme. Часть 2. Pblog Обсуждение статей 0 19.08.2010 14:50
статья - Введение в Sсheme. Часть 1 Pblog Обсуждение статей 0 01.07.2010 22:00
статья - Введение в SSE Pblog Обсуждение статей 0 23.06.2010 05:13
ТекстБокс - ограничение на введение символов. KOSTIK1 Microsoft Office Excel 8 18.03.2010 11:36