Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Память и переменные

49K
23 июля 2009 года
vazha.t
3 / / 14.07.2009
Всем привет!
Сейчас я вам задам вопрос, который большинству покажется до жути глупым, а мне он не даёт покоя уже много времени.
Так вот. К примеру в С++ переменная int занимает в памяти 4 байта. Так написано в книге. Объявляем переменную Х данного типа не присваивая ей пока никакого значения. Сколько будет она занимать места в памяти?
А сейчас присвоим ей значение, скажем, 100 000 ( х = 100 000 ). Неужели теперь переменная Х будет занимать 400 000 байт (~390 кбайт)? Тут даже страшно представить, что будет если я объявлю массив...
260
24 июля 2009 года
Ramon
1.1K / / 16.08.2003
2^(4 * 8) = ?
2.1K
24 июля 2009 года
wAngel
129 / / 23.11.2004
Целое число - 4 байта. Байт - 8 бит.
Бит - разряд двоичного кода (двоичная цифра). Может принимать только два взаимоисключающих значения: да/нет, 1/0, включено/выключено.
Т.е. в возможных комбинаций битов в одном байте = 2^8 - 1 = 255 = 0xFF.
Т.е. в одном байте возможных комбинаций битов 0xFF ^ 4 - 1 = 4294967295 = 0xFFFFFFFF.
Вне зависимости от значения переменной (комбинации битов).
При обявлении переменной, грубо говоря, резервируется область памяти требуемого размера. В данном случае 4 байта.
Вы подменяете понятия числа и цифры.
3
24 июля 2009 года
Green
4.8K / / 20.01.2000
Цитата: vazha.t
Всем привет!
Сейчас я вам задам вопрос, который большинству покажется до жути глупым, а мне он не даёт покоя уже много времени.


За "много времени" мог бы уже взять книгу и прочитать вдумчиво.

Цитата: vazha.t

Так вот. К примеру в С++ переменная int занимает в памяти 4 байта. Так написано в книге. Объявляем переменную Х данного типа не присваивая ей пока никакого значения. Сколько будет она занимать места в памяти?


Эмалированное ведро (с крышкой) занимает в сарае место равное 10 литрам.
Покупаем такое ведро и ставим в сарай не наливая в него пока ничего.
Сколько места будет занимать ведро в сарае?

Цитата: vazha.t

А сейчас присвоим ей значение, скажем, 100 000 ( х = 100 000 ). Неужели теперь переменная Х будет занимать 400 000 байт (~390 кбайт)? Тут даже страшно представить, что будет если я объявлю массив...


А теперь нальем в ведро, скажем, 4 литра воды. Неужели теперь ведро будет занимать 40 литров? Тут даже страшно представить, что будет если я куплю десяток полных ведер...

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог