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

с++ Необработанное исключение по адресу 0x0FA7CAB6 (ucrtbased.dll) в lab7.exe Недопустимый параметр был передан функции

04.12.2017, 02:59. Показов 4068. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
всем добрый вечер.Помогите решить проблему , компиляция проходит без ошибок и предупреждений. когда дохожу до выбора функции "void File_encode(void);" выдаёт ошибку :
"Необработанное исключение по адресу 0x0FA7CAB6 (ucrtbased.dll) в lab7.exe: Недопустимый параметр был передан функции, для которой недопустимые параметры вызывают неустранимую ошибку." . Ошибку ставит 118 строке.
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
#define _CRT_SECURE_NO_WARNINGS  //для совместімості 
#include <stdio.h>
#include <iostream>
#include <locale>
#include <conio.h>
 
using namespace std;
 
void w_File_write(void); //функция с клавы строка
void r_File_read(void); // считать и вывести 
void File_encode(void); // зашифровать
void File_decode(void); // расшифровать
 
void main()
{
    while (1)
    {
        setlocale(LC_CTYPE, "Ru");
        //system("chcp 1251");
        system("cls");
 
        puts("      _______________Меню программы:_________________\n");
        puts("1 – Сформировать с клавиатуры строку  и записать в файл ");
        puts("    (строка может содержать пробелы)\n");
        puts("2 – Считать строку из файла и распечатать \n ");
        puts("3 – Зашифровать строку и записать в файл\n ");
        puts("4 – Расшифровать строку и записать в файл \n");
        puts("0 – Выход");
        cout << "\n>";
 
        fflush(stdin);
 
        switch (int m = getchar())
        {
 
        case '0': exit(0);
        case '1': w_File_write(); break;
        case '2': r_File_read(); break;
        case '3': File_encode(); break;
        case '4': File_decode(); break;
        default:  printf("Нужно выбрать от 0 до 4");
 
            _getch(); break;
        }
    }
}
 
void w_File_write(void) //функция с клавы строка
 
{
    char stroka[100]; //выделение памяти под строку, которую будем писать в файл
 
 
    FILE *file;
 
    char filename[100]; //выделение памяти под строку, которую будем писать в файл
 
    system("cls");
    gets_s(filename);
    strcat(filename, "file_lab7.txt");
    if (fopen_s(&file, filename, "w"))  // W - запись в текстовом режиме; 
        cout << filename << " - не удалось создать !" << endl;
    else cout << filename << " - успешно создан." << endl;
    cout << endl << " Ввести строку: ";
    fflush(stdin);
 
    gets_s(stroka, 100);
 
    fputs(stroka, file);
 
    if (fclose(file))
    {
        cout << endl << filename << " - не удалось закрыть !" << endl;
    }
    else cout << endl << filename << " - успешно закрыт." << endl;
 
}
 
void r_File_read(void) // считать и вывести 
{
    char stroka[100]; //выделение памяти под строку, которую будем писать в файл
 
 
    FILE *file;
 
    char filename[100]; //выделение памяти под строку, которую будем писать в файл
 
    system("cls");
    gets_s(filename);
    strcat(filename, "file_lab7.txt");
 
    if (fopen_s(&file, filename, "r"))  //R - файл открывается только для чтения в текстовом режиме; если такого файла нет, то возникает ошибка;
 
        cout << "\n Файл не удалось открыть !\n";
    else cout << "Cозданный файл :\n\n";
 
    while (1)
    {
        if (!(fgets(stroka, 100, file))) break;
 
        puts(stroka);
    }
    fclose(file);
 
    _getch();
}
 
void File_encode(void) // зашифровать
{
    char stroka[100];
 
    char stroka2[200];
 
    FILE *file;
 
    file = fopen("file_laba7", "r");
 
    fgets(stroka, 99, file); 
 
    int j = 0;
    for (int i = 0; i <= strlen(stroka); i++, j++)
    {
        stroka2[j] = stroka[i];
        if (strcspn(stroka + i, "i") == 0)
        {
            stroka2[++j] = '1';
        }
    }
    stroka2[j] = '\0';
    file = fopen("file_laba7", "w");
    fprintf(file, "%s", stroka2);
    fclose(file);
 
 
}
 
void File_decode(void) // расшифровать
{
 
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.12.2017, 02:59
Ответы с готовыми решениями:

Ошибка в проекте OpenCV: "Недопустимый параметр был передан функции"
Всем, привет. Помогите решить проблему при запуске проекта OpenCV. У меня возникает ошибка при...

Необработанное исключение по адресу 0x0025600B
Здравствуйте форумчане! Короче у меня такая проблема: &quot;Первый этап обработки исключения по адресу...

Ошибка "Недопустимый параметр был передан функции"
Написал программу, которая должно в заданном месте в текстовом файле вставить подстроку, при ...

Вызвано исключение по адресу 0x0FD466CB (ucrtbased.dll). Динамическое выделение памяти
Проблема в динамическом выделении памяти. Функция multiply доходит до возвращения объекта и...

0
04.12.2017, 02:59
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.12.2017, 02:59
Помогаю со студенческими работами здесь

Необработанное исключение по адресу 0x001B3371 в XXX.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0xFDF
Делал консольную змейку и столкнулся вот с такой проблемой. void stena(char **arr) { int y...

Необработанное исключение по адресу 0x00ED4891 в strings.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0xCCCCCCCC
Программа толком не написан, проверял ранд и возникли проблемы. Ф-ция ранд генерирует одно и тоже...

Необработанное исключение по адресу 0x7739F0A3 (ntdll.dll)
Необработанное исключение по адресу 0x7739F0A3 (ntdll.dll) в SigmaNIL_RGB_Simple.exe: 0xC0000005:...

Необработанное исключение по адресу 0x558B16B6 (msvcr110d.dll) в : 0xC0000005
Необработанное исключение по адресу 0x558B16B6 (msvcr110d.dll) : 0xC0000005: нарушение прав доступа...


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

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