Ошибка во время выполнения

  • Автор темы Irisha
  • Дата начала
Статус
Закрыто для дальнейших ответов.
I

Irisha

#1
Во время выполнения появляется ошибка : Необработанное исключение в "0xcccccccc": 0xC0000005: Нарушение прав доступа при чтении "0xcccccccc".Возникает она в момент, когда необходимо ввести целое число, еще до приглашения к вводу.
Как проверить что именно вызывает подобную ошибку?
 
I

Irisha

#3
Я не знаю где ее скать.
Но если это то, что я думаю то вот:
"проба.exe": Загружено: "C:\Documents and Settings\Admin\Мои документы\Visual Studio 2008\Projects\проба\Debug\проба.exe", Символы загружены.
"проба.exe": Загружено "C:\WINDOWS\system32\ntdll.dll"
"проба.exe": Загружено "C:\WINDOWS\system32\kernel32.dll"
"проба.exe": Загружено: "C:\WINDOWS\WinSxS\x86_Microsoft.VC90.DebugCRT_1fc8b3b9a1e18e3b_9.0.21022.8_x-ww_597c3456\msvcp90d.dll", Символы загружены.
"проба.exe": Загружено: "C:\WINDOWS\WinSxS\x86_Microsoft.VC90.DebugCRT_1fc8b3b9a1e18e3b_9.0.21022.8_x-ww_597c3456\msvcr90d.dll", Символы загружены.
Первый этап обработки исключения в "0x1026f689 (msvcr90d.dll)" в "проба.exe": 0xC0000005: Нарушение прав доступа при записи "0x00130000".
Первый этап обработки исключения в "0xcccccccc" в "проба.exe": 0xC0000005: Нарушение прав доступа при чтении "0xcccccccc".
Первый этап обработки исключения в "0xcccccccc" в "проба.exe": 0xC0000005: Нарушение прав доступа при чтении "0xcccccccc".
Первый этап обработки исключения в "0xcccccccc" в "проба.exe": 0xC0000005: Нарушение прав доступа при чтении "0xcccccccc".
так много много много раз
Первый этап обработки исключения в "0x7c90e484" в "проба.exe": 0xC00000FD: Stack overflow.
Первый этап обработки исключения в "0xcccccccc" в "проба.exe": 0xC0000005: Нарушение прав доступа при чтении "0xcccccccc".
Первый этап обработки исключения в "0xcccccccc" в "проба.exe": 0xC0000005: Нарушение прав доступа при чтении "0xcccccccc".
Первый этап обработки исключения в "0xcccccccc" в "проба.exe": 0xC0000005: Нарушение прав доступа при чтении "0xcccccccc".
Первый этап обработки исключения в "0xcccccccc" в "проба.exe": 0xC0000005: Нарушение прав доступа при чтении "0xcccccccc".
Первый этап обработки исключения в "0xcccccccc" в "проба.exe": 0xC0000005: Нарушение прав доступа при чтении "0xcccccccc".
Первый этап обработки исключения в "0xcccccccc" в "проба.exe": 0xC0000005: Нарушение прав доступа при чтении "0xcccccccc".
Первый этап обработки исключения в "0xcccccccc" в "проба.exe": 0xC0000005: Нарушение прав доступа при чтении "0xcccccccc".
Первый этап обработки исключения в "0xcccccccc" в "проба.exe": 0xC0000005: Нарушение прав доступа при чтении "0xcccccccc".
Необработанное исключение в "0xcccccccc" в "проба.exe": 0xC0000005: Нарушение прав доступа при чтении "0xcccccccc".

Если это не то, подскажите где взять то, что нужно...
 

vital

Больной Компом Детектед
29.01.2006
2 432
33
#4
Нет, не это)

Уф.. Если не ошибаюсь, нажимаете клавишу F7. Программа исполняется по строчке. Если вызов какой-то функции из модуля Жмите F8, что бы в нее не заходить. И вобщем так тыркаете, пока программа не упадет. Когда упадет - увидите в каком месте. Попутно можно смотреть значения всяких переменных в ран-тайм..
ПС.
Если ф7-ф8 не работают, попробуйте ф4-ф5. Давно я не видел вашу студию..
 
I

Irisha

#5
Большое спасибо! Сама не так давно ей пользуюсь... Буду пробовать. Если что-то не выйдет, буду обращаться...
 
T

Trouyan

#6
Возникла такая же ошибка. Поковырявшись пришел к следующим результатам:
Ошибка возникает при обращении в функции класса к переменной объявленной при объявлении класса т.е. выглядит это так:

// заголовочный h файл
class myclass
{
...
int a;
...
};

// исполнительный cpp файл

...
myclass::fMyfuc()
{
a=123; // <- и на этом ВЫЛЕТАЕТ с ошибкой 0xC0000005: Нарушение прав доступа при чтении !!!!!!!!
}
...
раньше с проблемой такого рода не сталкивался и очень сильно удивило меня такое поведение, тем более что даже в книжках вроде аналогично пишут, да и сам Я точно так же делаю в другом классе (созданном с помощью MFC) и проблем не возникает!!!

Решение пока нашел только такое

...
myclass::fMyfuc()
{
myclass::a=123;
}
...

хотелось бы узнать почему в одних случаях это работает,а в других вылетает и насколько хорошее и правильное решение Я нашел.
 

a0z

Well-known member
15.03.2011
108
0
#7
Может this = NULL ?

Типа такого:
((myclass *)NULL)->fMyfuc();

Только почему второй код работает не ясно.
 
T

Trouyan

#8
Ошибку нашел. Забыл выделить память для созданного указателя на класс=/ Раньше просто с указателями на класс не работал вот и косякнул тут.
 

MeDVeDxf

New member
07.02.2013
1
0
#9
Господа, очень нужна помощь.
создаю объекты типа пользовательского класса и добавляю их в контейнер "vector". При вызове функции вывода коллекции на экран выходит ошибка:
Необработанное исключение в "0x011f5566" в "Kursovoy.exe": 0xC0000005: Нарушение прав доступа при чтении "0xcccccccc".
Вот собственно описание функции вывода коллекции на экран:
C++:
void Viewer()
{
if(collection->size()==0) cout<<"Список пуст"<<endl;
for (it=collection->begin(); it!=collection->end(); it++)
{

(*it)->show();
cout<<endl<<endl;
}
}
Студия при выводе ошибки указывает на строку -
C++:
 (*it)->show();
Никак не могу понять где ошибка. Помогите пожалуйста.
 
R

rrrFer

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

Подозреваю, что в векторе у тебя указатель на давно умерший объект, а может быть ошибка происходит внутри show() - когда обнаржуишь это - ставь брэйкпоинт уже внутри show и т.п.
 
Статус
Закрыто для дальнейших ответов.