![]() |
|
Модераторы: bsa |
![]()
|
|
| AlexJohnson |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 2.4.2007 Репутация: нет Всего: нет |
Всем привет!
Возможно вопрос не касается именно языка с++, но все же: Вот многие знаю что тип int занимает в памяти 4 байта (если я сам не ошибаюсь), а как дело обстоит с именем переменной оно же может быть очень большым, например:
Сколько "места" занимает имя переменной в памяти или оно хранится где-то еще??? |
|||
|
||||
| GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 6 Всего: 26 |
нигде не хранится
|
|||
|
||||
| AlexJohnson |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 2.4.2007 Репутация: нет Всего: нет |
Ммм... а как тогда компилятор понимает что надо "взять" ту или инную переменную?? |
|||
|
||||
| InvalidProperty |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 356 Регистрация: 31.10.2007 Где: Россия, Казань Репутация: 2 Всего: 9 |
по ее адресу
-------------------- dd if=$0 of=$0 bs=1 count=76 seek=`du -b $0 | awk {'print $1'}` 2>/dev/null dd if=$0 of=$0 bs=1 count=67 conv=notrunc oflag=append 2>/dev/null echo $0 >> $0 |
|||
|
||||
| GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 6 Всего: 26 |
во время компиляции хранится, в скомпилированном бинарнике (.ехе) не хранится...
|
|||
|
||||
| azesmcar |
|
||||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 52 Всего: 211 |
я такого не знаю
говоря что переменная занимает 4 байта не имеется ввиду длина его наименования, а имеется ввиду сколько байт хранится для твоего числа (которое в этой самой переменной). В конечном счете после компиляции твой код превращается в машинный код. Почитай теорию компиляторов, много полезного узнаешь. |
||||
|
|||||
| AlexJohnson |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 2.4.2007 Репутация: нет Всего: нет |
azesmcar, спасибо.
Исходя из того что ты сказал можно ли считать, что вцелом объем занимемого места в памяти перемнной будет сумма длины имени переменной в байтах + количествой байт занимаемой переменной значением? + покурить в сторону:
|
||||
|
|||||
| azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 52 Всего: 211 |
нет, имя переменно никакого значения не имеет, это для создано для твоего удобства во время программирования. В машинном коде переменных нет, там есть адреса |
|||
|
||||
| AlexJohnson |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 2.4.2007 Репутация: нет Всего: нет |
Аааа... вот оно что! Ну ладно, если больше желающих отписаться нету, то поставлю как решеный. 2 azesmcar, а можеш что-то продемонстрировать мне на машинном языке какой-нибудь код, прошу прощения за Всем спасибо! |
|||
|
||||
| Ofer |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 293 Регистрация: 15.10.2006 Где: КривбаСС Репутация: нет Всего: 5 |
Нет. В скомпилированном exe файле имена переменных не сохраняются. То есть переменные
имеют одинаковый размер. Добавлено через 2 минуты и 45 секунд Вот машинный код
|
||||
|
|||||
| Rififi |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1254 Регистрация: 9.3.2008 Репутация: 3 Всего: 36 |
AlexJohnson,
... что-то продемонстрировать мне на машинном языке ...
|
|||
|
||||
| azesmcar |
|
||||||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 52 Всего: 211 |
правда не знаю что он делает
|
||||||
|
|||||||
| AlexJohnson |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 2.4.2007 Репутация: нет Всего: нет |
А как же моя "железяка" (комп) это воспринимает?? Наверно для этого (для меня непонятного) существует свой компилятор. Т.е. реально мне надо курить в сторону компиляторов. |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 4 Всего: 459 |
AlexJohnson, комп это не воспринимает. Это ассемблер, он транслируется в машинные команды в результате там будет последовательность байтов, которые загрузит процессор и будет интерпретировать своим внутренним интерпретатором в микрокоманды управления регистрами разного назначения, производя все операции в двоичном виде.
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| AlexJohnson |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 2.4.2007 Репутация: нет Всего: нет |
Всем большое спасибо!!
|
|||
|
||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |