Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
NiggaR
0 / 0 / 1
Регистрация: 01.10.2016
Сообщений: 24
#1

Разделение строки на лексемы с strtok, проверка длины каждой лексемы (выдает ошибку) - C++

05.10.2016, 17:32. Просмотров 243. Ответов 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
#include <iostream> 
#include <string.h>
#include <string>
using namespace std;
 
int main() {
 
  const int a = 3;
  const int b = 100;
  cout<<"String: "<<endl;
 
  char symbols[a][b];
  for (int i = 0; i < a; i++) {
    gets_s(symbols[i]); 
    cout << "---------"  << endl;
 
    char * str = strtok(symbols[i], " ");
 
    while (str != NULL) { 
        cout << str << endl;
        str = strtok(NULL, " ");
  }
    if (strlen(str) == 3) {
    cout << "!!!" << endl;
    }
  cout << "---------"  << endl;
  }
 
  
  cout << endl;
  system("pause");
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.10.2016, 17:32
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Разделение строки на лексемы с strtok, проверка длины каждой лексемы (выдает ошибку) (C++):

Функция разделения строки на лексемы strtok
Программе на вход подается строка, содержащая слова один-девять плюс минус,...

после strtok записать лексемы в массив
файл input.txt содежит 2 строки: 10 1 2 3 6 3 3 2 2 1 1 Код: #include...

Посмотрите код! (используя функцию strtok, разбить телефонный номер формата (555) 555-5555, введенный как строку, на лексемы)
Посмотрите код все правильно ли??? Задание звучит так, используя функцию...

Разбить строки на отдельные лексемы
Прошу помощи для &quot;особо одаренных&quot;)). Учусь на программиста заочно (хотя в...

String-строки. C-строки. Лексемы
Добрый вечер, господа. Начну с задания: &quot;Записать в новую строку слова, которые...

Разбиение на лексемы
Нужно написать программу, запрашивающую строку текста, разбивающую ее на...

1
nmcf
6243 / 5555 / 2526
Регистрация: 14.04.2014
Сообщений: 23,356
05.10.2016, 17:54 #2
Скобки ставь ровнее.
C++
1
2
3
4
5
6
7
8
9
10
11
    while (str != NULL)
    { 
      cout << str << endl;
 
      if (strlen(str) == 3)
      {
        cout << "!!!" << endl;
      }
 
      str = strtok(NULL, " ");
    }
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.10.2016, 17:54
Привет! Вот еще темы с решениями:

Дополнение к разбивке на лексемы
В общем, есть простенький декодер Морзе, проблема лишь в том, что он режется на...

Разбиение кода на лексемы
Добрый день. Интересует такой вопрос. Какие средства могут помочь при написании...

String разбить на лексемы
есть пример которий записаний в string str1=(&quot;25+69-65*85/58+65*(12+36)+36&quot;)...

Разбор текста на лексемы
Пытаюсь написать программу, которая будет разбирать текст исходного кода на...


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

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

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