![]() |
|
Модераторы: bsa |
![]()
|
|
| SneG0K |
|
|||
|
Max Mara ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1887 Регистрация: 1.12.2007 Где: Wis Dells Репутация: нет Всего: 54 |
Запускаю, ввожу больше чем 6 символов и оно отображает все что я ввел... Почему нет переполнения? и почему вводятся все символы, а не первые шесть? Извините, если тупой вопрос, сегодня первый раз увидел восьмой VS |
|||
|
||||
| azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 52 Всего: 211 |
SneG0K
Совсем не обязательно чтобы программа вылетала в таких случаях. Она может и работать. Введи данных побольше - наверняка вылетит с Access Violation. |
|||
|
||||
| GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 6 Всего: 26 |
вылетит если будут повреждены данные или нарушатся границы страниц памяти
если за str данных нет - они не повредятся |
|||
|
||||
| azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 52 Всего: 211 |
Переполнение есть! Функция записывает данные по указанному адресу по очереди. Память есть? записывается, но иногда (даже часто) при переполнении буфера память к которой обращается программа бывает например занята другой программой. От того и ошибка. Это сообщение отредактировал(а) azesmcar - 25.4.2009, 23:42 |
|||
|
||||
| GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 6 Всего: 26 |
||||
|
||||
| Rififi |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1254 Регистрация: 9.3.2008 Репутация: 3 Всего: 36 |
SneG0K,
Почему нет переполнения? Объясняю популярно: дупустим, ты идёшь по улицке. Пока ты разинул варежку на проходящих мимо девушек, у тебя спионерили кошелёк. Ты это сразу замечаешь? Ясен пень, в конце концов ты тему просчёшь, так же и с системой: за то, что ты засрал не принадлежащие тебе места, система ещё припомнит. |
|||
|
||||
| azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 52 Всего: 211 |
Winamp |
|||
|
||||
| W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 2 Всего: 121 |
azesmcar, виртуальное пространство памяти одного процесса в общем случае неразделимо. Они могут быть заняты данными этой же программы, но другой вряд ли. (ну за исключением случаев, когда чужое приложение внедряет свой модуль или пишет в память).
-------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
| Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 27 Всего: 154 |
юный хакер?
ТС, лучше учись программировать, и не смей больше переполнять буферы |
|||
|
||||
| azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 52 Всего: 211 |
А кто мне запретит изменить данные моей программы, вылетает потому - что память по которой я пытаюсь записать не пренадлежит мне. |
|||
|
||||
| SneG0K |
|
|||
|
Max Mara ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1887 Регистрация: 1.12.2007 Где: Wis Dells Репутация: нет Всего: 54 |
Lazin, а я по твоему собрался какой нибуть кривой демон писать, чтоб залить своему провайдеру и сидеть на халяву в инете...
Я знаю, почему происходит переполнение, просто мне не понятно, почему в данном случае программа работает корректно... Просто логика новичка: память под шесть символов выделена, вводится гораздо больше, и ничего - все работает... Просто начинал я с дельфи, там вот такое вольнодумство не позволено, выделил под шесть символов, остальные исчезнут сами А вот тут совсем не понятно... Тоесть, на сколько я понял, переполнение есть, но в данном случае я вышел за пределы переменной, но не области памяти выделенной системой для программы? Добавлено через 13 минут и 51 секунду
Ага, ввел побольше и получилось Добавлено через 14 минут и 14 секунд Все. всем спасибо! |
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 79 Всего: 250 |
||||
|
||||
| azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 52 Всего: 211 |
Это я для примера сказал. |
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 79 Всего: 250 |
Зато это послужило поводом, для высказывания морально-успокаивающего слова : |
|||
|
||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |