Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/13: Рейтинг темы: голосов - 13, средняя оценка - 4.92
0 / 0 / 0
Регистрация: 23.02.2016
Сообщений: 27
1

Visual Studio 2010.При компиляции ошибка 0xC0000005

26.02.2016, 21:04. Показов 2555. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
При компиляции выдает сообщение :
Unhandled exception at 0x5c373aff (msvcp100d.dll) in testt.exe: 0xC0000005: Access violation reading location 0xe79e79eb.
Visual Studio 2010.При компиляции ошибка  0xC0000005

Открывает ещё одну вкладку "ostream" и появилась строка(обвёл на скрине).
Visual Studio 2010.При компиляции ошибка  0xC0000005


На всякий,вот код программы.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
#include "stdafx.h"
#include <stdlib.h>
#include <iostream>
#include <conio.h>
#include <locale>
#include <fstream>
#include <ctime> // для time(0) ,используется для автоматической рандомизации srand( time(0) )
 
using namespace std;
 
// Метод записи рандомных координат в файл coordinates.txt
void cread_coord()
{
    ofstream file;
    file.open("coordinates.txt", ios::out);
    // Задаем рандомные координаты 10-ти точек и записываем в файл.
    srand( time(0) );// автоматическая рандомизация
    
    for (int i=0; i<10; i++)
    {
    
        file << (-5) + rand() % 10 << " " << (-5) + rand() % 10 << endl;
    }
    file.close();
}
 
/* Метод чтения координат из файла.
   Проверка коорд. на совпадение с закрашенной областью
*/
void read_coord()
{
    ifstream file ;
    file.open("coordinates.txt",ios::in);
 
    for (int i = 0; i < 10; i++)
    {
        int x, y;
        while (!file.eof())
        {
            file >> x >> y;
            cout << "(" << x << ";" << y << ")";
            if (x >= 0)
            {
                if (y >= 0 && y <= (-x*x + 2) && y <= x)
                    cout << " Принадлежит!" << endl;
                else
                    cout << " Не принадлежит!" << endl;
            }
 
            if (x < 0)
            {
                if (y <= 0 && y <= (-x*x + 2) && y >= x)
                    cout << " Принадлежит!" << endl;
                else
                    cout << " Не принадлежит!" << endl;
            }
        }
 
        file.close();
 
    }
 
}
 
//Задание 5
void search_numbers()
{
    for (int i = 10; i < 100; i++)
    {
        if (((i/10)*(i/10) + (i%10)*(i%10))%17 == 0 )
            cout << i << endl;
    }
}
 
// Задание 6
void Input(const char* namefile, int a1, int b1,int n1)
{
    ofstream file;
    file.open(namefile);
 
    for (int i = 0; i<n1; i++)
    file << (int) (a1) + rand() % b1    << "\t" ;
 
    file.close();
}
void Input(const char* namefile, double a1, double b1, int n1)
{
    ofstream file;
    file.open(namefile);
    srand ( time(0) );
    double symbol[123];
 
    for (int i = 0; i<n1; i++)
    {
        symbol[i] = (double) (a1 + rand() % (int)(b1))/2.1;
        file << symbol[i] << "\t" ;
    }
    file.close();
} 
void Input(const char* namefile, char a1, char b1, int n1)
{
    ofstream file;
    file.open(namefile);
    srand ( time(0) );
    char symbol[123];
 
    for (int i = 0; i<n1; i++)
    {
        symbol[i] = (char) 'a' + rand() % (26);
        file << symbol[i] << "\t" ;
    }
    file.close();
}
int main(int argc, char* argv[])
{
    setlocale(LC_ALL, "rus");
 
 
    cout << "Тема 03.Задание 5.1" << endl;
    cread_coord();// Вызываем метод записи рандомных координат в файл.
    read_coord();// Вызываем метод чтения координат из файла и проверка на принадлежность к закрашенной области.
    _getch();
    system("cls");
 
    cout << "Тема 03. Задание 5.2" << endl;
    search_numbers();
    _getch();
    system("cls");
 
    cout << "Тема 03. Задание 6" << endl;
    //int n = 124;
    int a=10,b=20;
    double aa=10.0,bb=20.0;
    char aaa = 'a',bbb = 'z';
    int n=132;
    
    //Input("input.int",a,b,n);
    //Input("input.dbl",aa,bb,n);
    //Input("input.chr",aaa,bbb,n);
 
    
    
    _getch();
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.02.2016, 21:04
Ответы с готовыми решениями:

Visual Studio 2010 не обновляет файлы при компиляции
Сутиация такая. Есть некий проект в котором есть файл главной формы и есть файл класса. Заметил ,...

Visual Studio 2010 при компиляции создает asm файлы
Короче ситуация такая - в настройках проекта нигде не выставлено, чтобы студия создавала листинги...

Visual C++ 2010. Ошибка при компиляции.
error C2059: syntax error : 'type' c:\program files (x86)\microsoft visual studio...

подскажите ,что делать если при компиляции проекта Visual Studio вылетает ошибка:«не опознанный идентификатор»!?
подскажите ,что делать если при компиляции проекта Visual Studio вылетает ошибка:«include: не...

2
Вездепух
Эксперт CЭксперт С++
11695 / 6374 / 1724
Регистрация: 18.10.2014
Сообщений: 16,067
27.02.2016, 04:47 2
Во-первых, при какой еще "компиляции"? приведенный вами скриншот четко показывает, что программу вы успешно откомпилировали и запустили. Вы же утверждаете, что эта ошибка вылазит "при компиляции". Это как это?

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

В-третьих, ошибка возникает потому, что внутри своих функций 'Input' вы заводите массив 'symbol' размером 123. А затем снаружи передаете значение параметра 'n1', равное 132, и пишете данные в массив 'symbol' с индексами от 0 до 131. Как несложно заметить, 132 больше, чем 123. Т.е. вы производите запись за пределы массива 'symbol' и уничтожаете что-то в окружающей памяти. После чего все накрывается медным тазом. Это накрытие медным тазом вы и наблюдаете в виде ошибки 0xC0000005.
2
0 / 0 / 0
Регистрация: 23.02.2016
Сообщений: 27
28.02.2016, 13:37  [ТС] 3
Да, с описанием проблемы накосячил,а с массивами разобрался после того как тему создал,но не отписался,так как никак не мог зайти на форум.А Вам все же огромное спасибо,что вы откликнулись!
0
28.02.2016, 13:37
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.02.2016, 13:37
Помогаю со студенческими работами здесь

Ошибка в Microsoft Visual Studio 2010
не удается начать отладку так как отсутствует объект отладки C:\Users\Vitaliy\Documents\Visual...

Чем отличается Microsoft Visual C++ 2010 Express от Visual Studio 2010 Ultimate
Подскажите пожалуйста, в чем разница Microsoft Visual C++ 2010 Express от Visual Studio 2010...

Ошибка в Visual Studio 2008, а в 2010 отсутствует :(
У меня есть программа, которая в Microsoft Visual Studio 2010 работает замечательно, а в 2008...

Почему выходит ошибка в Visual studio С++ 2010?
Вышла такая ошибка при компиляции: 1&gt;c:visual studio 2010\projects\метод якоби\meth.cpp(6): error...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru