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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Значения в переменных при объявлении, Какие значения в них содержатся 
V
    Опции темы
gnokki200
Дата 21.2.2009, 20:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Приветствую, уважаемые форумчане!
Возник у меня вопрос такого характера: какие значения могут содержатся в переменных при их объявлении, т.е. обязательно ли их всех и всегда инициализировать перед началом использования?

например:
Код

int i;
do{
    ...
    i++;
}while(...)

Гарантированно ли i будет содержать 0?

В частности интересует использование stl.
std::string s;
std::vector<...> V;
str::list<...> L;
Гарантированно ли они будут empty() и их можно будет начинать заполнять без инициализации, clear() ?
Спасибо!
PM MAIL   Вверх
anatox91
Дата 21.2.2009, 20:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


программист-самоучка
**


Профиль
Группа: Участник
Сообщений: 699
Регистрация: 12.1.2008
Где: ++Украина.Крым++

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



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


--------------------

The code is the design ©

Sony VAIO VGN-FW480J

user posted image
PM MAIL ICQ   Вверх
gnokki200
Дата 21.2.2009, 21:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



anatox91, примного вам благодарен!
PM MAIL   Вверх
GoldFinch
Дата 21.2.2009, 21:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


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

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



если переменная глобальная, то при запуске программы (в винде) в ней будет 0
PM MAIL ICQ   Вверх
vinter
Дата 21.2.2009, 22:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Explorer
****


Профиль
Группа: Завсегдатай
Сообщений: 2735
Регистрация: 1.4.2006
Где: Н.Новгород

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



Цитата(GoldFinch @  21.2.2009,  22:29 Найти цитируемый пост)
(в винде)

везде


--------------------
Мой блог
PM MAIL WWW   Вверх
zim22
Дата 22.2.2009, 09:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


depict1
****


Профиль
Группа: Завсегдатай
Сообщений: 2682
Регистрация: 15.1.2009
Где: Украина

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



Цитата(gnokki200 @  21.2.2009,  20:42 Найти цитируемый пост)
какие значения могут содержатся в переменных при их объявлении

При объявлении(declaration) переменная не содержит никаких значений и память для её хранения не выделяется.
скорей всего Вы имели ввиду определение(definition) переменной.
пример объявления:
Код

extern int i; // объявить, но не определять переменную i

пример определения:
Код

int i; // объявить и определить переменную i



Это сообщение отредактировал(а) zim22 - 22.2.2009, 09:08


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

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

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

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

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


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

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


 




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


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

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