Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> тип char, выделение памяти при объявлении  
:(
    Опции темы
aspiring
Дата 20.4.2012, 21:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 20.4.2012

Репутация: нет
Всего: нет



Никак не пойму такую вещь. 
Например, при объявлении :
 
Код

int x;

компилятор выделяет память для переменной  и выводит: 0012FF54:
Код

cout <<  &x << endl;

При объявлении переменной типа char вместо адреса выводится бред:
Код

char a;
cout  << &a << endl;

Почему так?
Далее:
Код

char* pt;
a = 'B';
cout << (int*)a << endl;    
    pt = &a;    
    cout << (int*)pt << endl;


Здесь после присвоения указателю pt адреса переменной a получаем, тем не менее, разные адреса.
Может кто объяснит начинающему, почему так?
PM MAIL   Вверх
alexvs11
Дата 20.4.2012, 22:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


hell is here
**


Профиль
Группа: Участник
Сообщений: 518
Регистрация: 21.8.2010

Репутация: 2
Всего: 10



Цитата(aspiring @  20.4.2012,  21:38 Найти цитируемый пост)
При объявлении переменной типа char вместо адреса выводится бред:

почему бред?
Цитата(aspiring @  20.4.2012,  21:38 Найти цитируемый пост)
char* pt;a = 'B';cout << (int*)a << endl;        pt = &a;        cout << (int*)pt << endl;


может все же (int*)&a?

PM MAIL   Вверх
aspiring
Дата 20.4.2012, 22:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 20.4.2012

Репутация: нет
Всего: нет



Понял, спасибо alexvs11.
PM MAIL   Вверх
borisbn
Дата 20.4.2012, 22:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 21
Всего: 135



aspiring, cout при получении любого адреса ( short*, int*, etc) печатает сам адрес. При получении char* он (cout) считает это строкой-Си


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
aspiring
Дата 20.4.2012, 22:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 20.4.2012

Репутация: нет
Всего: нет



Да, разобрался. Спасибо, borisbn.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.1076 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.