Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Вероника99
5 / 5 / 5
Регистрация: 16.12.2013
Сообщений: 461
#1

Почему выбивает из программы?

04.06.2018, 22:43. Просмотров 64. Ответов 0
Метки нет (Все метки)

Добрый вечер. Есть программа, которая выполняет следующие функции:
1) Считывание данных с текста/или клавиатуры
2) Вывод считанных данных на экран
3) Ввод еще дополнительных двух строк для выполнения следующих функций
Проблема в том, что после считывания данных с файла и их вывода на экран, происходит выбивание из программы. Код:
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
int main()
{
int length=S; 
char begin[MAX];
char end[MAX]; 
char **strings=(char**)malloc(S*sizeof(char*)); 
char buffer[MAX]; 
int sym;
puts("1 - файл, другое число - клавиатура");
scanf("%i",&sym);
fflush(stdin);
if(sym==1)
{
length=DataFromFile(strings); 
}
else
{
puts("Введите даты - например 12 ноября (0 - конец ввода)");
 
for (length = 0; length < S; )
{
gets(buffer);
if (!strcmp(buffer, "0"))
{
break;
}
strings[length] = (char*)malloc(strlen(buffer) + 1); 
strcpy(strings[length++], buffer); 
fflush(stdin);
 
}
}
 
puts("Даты:");
ShowStrings(length,strings);
fflush(stdin);
getch();
 
puts("Введите начало промежутка:"); //Когда доходит до этого участка, пропускается ввод следующих строк и завершается работа программы
 
gets_s(begin,20);
// getch();
fflush(stdin);
//system("pause");
puts("Введите конец промежутка:");
 
gets_s(end,20);
// getch();
fflush(stdin);
}
Подскажите, пожалуйста, из-за чего пропускается ввод строк? Очистку буфера уже сделала везде, где только можно.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.06.2018, 22:43
Ответы с готовыми решениями:

Одномерный массив: после ввода данных Visual Studio выбивает ошибку, остальные программы работают нормально
Прошу помочь разобраться с ошибкой или ошибками. Задача звучит так: в...

Почему прерывается работа программы после чтения их файла?
После считывания данных с файла, программа останавливается,т.е на экран...

Выбивает программа
написал программу, при запуске сразу же выбивает. Вот код и скрин ошибки: ...

Realloc выбивает точку останова
Здравствуйте, есть такое задание Дан массив целых двузначных чисел Х(N)....

Выбивает ошибку call of nonfunction
#include&lt;stdio.h&gt; #include&lt;conio.h&gt; #include&lt;math.h&gt; int vector(int k);...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.06.2018, 22:43

Почему при выполнении программы всегда получается нулевой вектор и DOMAIN error?
Ввести вектор цілих чисел. Виконати нормування елементів цього вектора,...

При повторном realloc-е выбивает ошибку
Доброго дня, уважаемые форумчане. Прошу у вас помощи в работе с указателями и...

Определить, почему во втором варианте программы происходит переполнение при вычислении переменной dist
Добрый вечер. Не могу понять, почему во втором варианте программы происходит...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru