Форум программистов, компьютерный форум CyberForum.ru

Необработанное исключение в "0x0fc1d484 (msvcr100d.dll)" в "1.exe": 0xC0000005: Нарушение прав доступа при чтении "0x00aee0af" - C++

Восстановить пароль Регистрация
 
dearkato
7 / 7 / 1
Регистрация: 30.10.2011
Сообщений: 71
01.10.2012, 19:39     Необработанное исключение в "0x0fc1d484 (msvcr100d.dll)" в "1.exe": 0xC0000005: Нарушение прав доступа при чтении "0x00aee0af" #1
помогите разобраться в чем ошибка?
необходимо, чтобы ввод массива осуществлялся с клавиатуры построчно

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
#include <stdio.h>
#include <conio.h>
#include <string.h>
#define n 10
     // Прототипы функций
     void bsort (char **arr, int size, 
    int (*comp) (const char *s1, const char *s2));
     int less (const char *s1, const char *s2);
     int greater (const char *s1, const char *s2);
 
int main (void) {
    char *Lines[n];
    int i;
    printf("\n\tEnter the string\n");
    for (i = 0; i < n; ++i)
    {scanf("%s",&Lines[i]);}
// Вызов функции сортировки по возрастанию в алфавитном порядке
    puts("\n The sorting in ascending order:");
    bsort (Lines, n, less);
    
     for (i = 0; i < n; ++i)
        printf("\t %s\n", Lines[i]);
    
// Вызов функции сортировки по убыванию в алфавитном порядке
    puts("\n The sorting in descending order:");
    bsort (Lines, n, greater);
    
     for (i = 0; i < n; ++i)
        printf("\t %s\n", Lines[i]);
 
    printf("\n\n ... Press any key: ");
    _getch();
    return 0;
}
 
 
// Определение функции сортировки строк
void bsort (char **arr, int size, 
    int (*comp) (const char *s1, const char *s2))
{
    int i, j;
 
    for (i = 0; i < size - 1; ++i)
        for (j = 0; j < size - 1; ++j)
            if (comp (arr[j], arr[j + 1]) > 0)
                {
                char *s = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = s;
                }
}
 
// Определение функции сравнения строк по возрастанию
int less (const char *s1, const char *s2)
{
    return strcmp (s1, s2);
}
 
// Определение функции сравнения строк по убыванию
int greater (const char *s1, const char *s2)
{
    return -strcmp (s1, s2);
}
Добавлено через 2 часа 15 минут
при выполнении данной программы выводит данное сообщение об ошибке:

Необработанное исключение в "0x0fc1d484 (msvcr100d.dll)" в "1.exe": 0xC0000005: Нарушение прав доступа при чтении "0x00aee0af"
что нужно сделать, чтобы эта ошибка не выводилась?

или помогите как-то добавить в программу код ввода массива построчно
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.10.2012, 19:39     Необработанное исключение в "0x0fc1d484 (msvcr100d.dll)" в "1.exe": 0xC0000005: Нарушение прав доступа при чтении "0x00aee0af"
Посмотрите здесь:

C++ Необработанное исключение в "0x54a2d2e9 (msvcr100d.dll)" в "3.exe": 0xC0000005: Нарушение прав доступа при записи "0xcccccccc".
Необработанное исключение в "0x1027c9c7 (msvcr100d.dll)" в "gh.exe": 0xC0000005: Нарушение прав доступа при чтении "0xfeeefeee". C++
"Нарушение прав доступа при чтении "0x00000000"" C++
C++ Необработанное исключение в "0x776315de" в "c++1.exe": 0xC0000005: Нарушение прав доступа при записи "0x40e000
Возникает ошибка "0xC0000005: Нарушение прав доступа при чтении "0xfeeefee2"." C++
C++ Нарушение прав доступа при чтении "0xcdcdcdcd"
C++ Необработанное исключение в "0x104b2288" в "Matrix.exe": 0xC0000005: Нарушение прав доступа при записи "0xcdcd
C++ С++ ошибка 0xC0000005: Нарушение прав доступа при записи "0xcccccccc". Инициализация строк

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
01.10.2012, 20:29     Необработанное исключение в "0x0fc1d484 (msvcr100d.dll)" в "1.exe": 0xC0000005: Нарушение прав доступа при чтении "0x00aee0af" #2
C++
1
2
3
4
5
6
printf("\n\tEnter the string\n");
    for (i = 0; i < n; ++i)
    {
        Lines[i] = new char[255];
        scanf("%s", Lines[i]);
    }
И функцию для освобождения памяти добавить.

Добавлено через 21 минуту
Но если строки читать, а не слова, то так:
C++
1
2
3
4
5
6
7
printf("\n\tEnter the string\n");
    for (i = 0; i < n; ++i)
    {
        Lines[i] = new char[255];
        //scanf("%s", Lines[i]);
        gets(Lines[i]);
    }
И не забыть:
C++
1
2
3
// Освобождаем память   
    for (i = 0; i < n; ++i)
        delete Lines[i];
Yandex
Объявления
01.10.2012, 20:29     Необработанное исключение в "0x0fc1d484 (msvcr100d.dll)" в "1.exe": 0xC0000005: Нарушение прав доступа при чтении "0x00aee0af"
Ответ Создать тему
Опции темы

Текущее время: 08:41. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru