Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
TheWonderer
0 / 0 / 0
Регистрация: 06.11.2013
Сообщений: 8
#1

Программа слетает - C++

06.11.2013, 22:24. Просмотров 307. Ответов 7
Метки нет (Все метки)

Здравствуйте, взял код из книги, но при выполнении программа слетает после вода слова и нажатия Enter

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
#include <iostream>
#include <cstring>
using namespace std;
 
   char *keyword[4][2] = {
  "for", "for(init; cond; inc)",
  "if", "if(cond) ... else ...",
  "switch", "switch(var) { case-list }",
  "while", "while(cond) ..." };
  
  int main()
  {
    char str[80];
    int i;
    
    cout << "Enter keyword: ";
    cin >> str;
    
    for(i=0; *keyword[i][0]; i++)
     {
       if(!strcmp(keyword[i][0], str))
         cout << keyword[i][1] << endl;
     }
     
     return 0;
  }
не могу понять что не так...?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.11.2013, 22:24
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Программа слетает (C++):

Слетает прога при присваивании разименованованному указателю - C++
Помогите плз! Не могу присвоить значение элементу строки; #include &lt;iostream&gt; using namespace std; main() { char* s1 =...

Создал первое консольное приложение. Выдает ошибка msvcp140.dll и кириллица слетает - C++
Насколько я понимаю не хватает dll на пк где НЕ установлена VS2017 Вопрос как вложить эти файлы в исходник и почему кодировка не...

Программа , которая выводит время, за которое программа работает - C++
Вообщем, нужно что бы считалось время от начала работы программы, и выводилось на экран.

Первая программа. Код не компилируется и не запускается программа. - C++
Первая программа, первая ошибка Здравствуйте! Решил учить С++. Скачал книгу Programming: Principles and Practice Using C++, Бьерн...

Программа слетает с ошибкой .Access violation At ... Address - C++ Builder
Доброе время суток. Народ, нужна небольшая консультация. Я на С++ Builder только начинаю писать. Суть вопроса Есть форма. На...

Слетает windows - Windows
помогите, пожалуйста, постоянно слетает windows при каждой перезагрузке компьютера, ставила win7, xp, ничего не помогает, в чем загвоздка?...

7
Водяной Змей
Заблокирован
06.11.2013, 22:36 #2
Консоль всегда автоматически закрывается, если не добавить ожидание ввода или нажатия клавиши.

Включите в проект заголовочный файл conio и перед return вызывайте getch() или _getch().
0
TheWonderer
0 / 0 / 0
Регистрация: 06.11.2013
Сообщений: 8
06.11.2013, 22:46  [ТС] #3
не в этом дело, а вот вчем после запуска появляется запрос "ввести слово" я к примеру вел for потом отображается справка и программа вылетает (выдает ошибку) http://www.cyberforum.ru/attachment....1&d=1383763522
0
Миниатюры
Программа слетает  
Водяной Змей
Заблокирован
06.11.2013, 23:34 #4
Что за странное условие цикла - *keyword[i][0]?
Я так понял, Вам надо, чтобы цикл повторился 4 раза. А это i<4 и всё.
0
nord_v
228 / 177 / 69
Регистрация: 22.08.2013
Сообщений: 724
07.11.2013, 05:39 #5
Что должна делать программа? Что за массив?:
C++
1
2
3
4
5
char *keyword[4][2] = {
  "for", "for(init; cond; inc)",
  "if", "if(cond) ... else ...",
  "switch", "switch(var) { case-list }",
  "while", "while(cond) ..." };
0
fridi
-8 / 40 / 1
Регистрация: 21.09.2009
Сообщений: 145
07.11.2013, 07:26 #6
C++ (Qt)
1
2
3
4
5
6
7
   for(i=0;  i < sizeof(keyword)/sizeof(keyword[0]); i++)
     {
       if(!strcmp(keyword[i][0], str))
         cout << keyword[i][1] << endl;
     }
     
    getch();
0
Max Dark
шКодер самоучка
1849 / 1649 / 603
Регистрация: 09.10.2013
Сообщений: 3,678
Записей в блоге: 6
Завершенные тесты: 2
07.11.2013, 07:40 #7
C++
1
2
3
4
5
6
  const char **keyword[2] = {
  { "for", "for(init; cond; inc)" },
  { "if", "if(cond) ... else ..." },
  {"switch", "switch(var) { case-list }" },
  {"while", "while(cond) ..."},
  { NULL, NULL} };
0
TheWonderer
0 / 0 / 0
Регистрация: 06.11.2013
Сообщений: 8
07.11.2013, 09:17  [ТС] #8
Понял свою ошибку, забыл до бавить нулевую строку.
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
#include <iostream>
#include <cstring>
#include <conio.h>
using namespace std;
 
   char *keyword[][2] = {
  "for", "for(init; cond; inc)",
  "if", "if(cond) ... else ...",
  "switch", "switch(var) { case-list }",
  "while", "while(cond) ...",
  "", "" }; // нулевая строка
  
  int main()
  {
    char str[80];
    int i;
    
    cout << "Enter keyword: ";
    cin >> str;
    
    for(i=0; *keyword[i][0]; i++) // *keyword[i][0] - проверяет на нулевое значение.
     {
       if(!strcmp(keyword[i][0], str))
         cout << keyword[i][1] << endl;
     }
     getch();
     return 0;
  }
Всем спасибо.
0
07.11.2013, 09:17
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.11.2013, 09:17
Привет! Вот еще темы с ответами:

Слетает активация - Windows 8, 8.1
Добрый день. Дано: ПК с Win 8.1 Профессиональная (коробочная версия). Домен: Win 2003. Проблема: после ввода в домен слетает...

Слетает кодировка - PHP БД
Здравствуйте. У меня возникла стандартная проблема с кодировкой. Так вот, заливаю сайт на хост, временно всё работает, я ничего не...

Слетает KIS - Антивирусы
Всем доброго дня, помогите с решением такой проблемы, два года стоял на компе KIS 11, я его с помощью триала раз в месяц обновлял и проблем...

Слетает кодировка - Python
Только осваиваю питон и pyqt # -*- coding: utf-8 -*- from PyQt4 import QtCore, QtGui class MyWindow(QtGui.QWidget): def...


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

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

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