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

объединение лексем в единое целое - C++

Восстановить пароль Регистрация
 
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4920 / 2663 / 243
Регистрация: 29.11.2010
Сообщений: 7,405
04.04.2011, 18:51     объединение лексем в единое целое #1
Программа должна считывать тел. номер в виде xxx-xxxx, затем с помощью функции strtok разбить его на 2 лексемы, а потом склеить их и преобразовать в значение типа int. Полученный результат вывести на экран. Но что то не получается (
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include<iostream>
#include<conio.h>
#include<clocale>
using namespace std;
 
int main(){
    setlocale(LC_ALL,"Russian");
    char nomer[8];
    cout<<"Введите номер: ";
    cin>>nomer;
    char* ptrnom=strtok(nomer, "-");
    char nomer2[8];
    while (ptrnom!=NULL)
    {
    //    strcat(nomer2, ptrnom);
          cout<<ptrnom;
          ptrnom=strtok(NULL, " ");
    }
    //int inomer=atoi(nomer2);
    //cout<<inomer;
    getch();
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.04.2011, 18:51     объединение лексем в единое целое
Посмотрите здесь:

Сохранение всех входящих лексем(строк) в порядке поступления C++
Дайте определение "Последовательность лексем" C++
Дано целое число m. получить найбольщее целое k при котором 4^k<m C++
C++ Объединить куски программы в единое целое
Разбивка на лексемы и состовление из лексем строк C++
C++ Составить функцию, которая, получив целое число определяет, уменьшается ли оно в целое число раз
Класс лексем, разбить числа C++
Выделение лексем C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Aye Aye
 Аватар для Aye Aye
367 / 281 / 36
Регистрация: 17.12.2009
Сообщений: 567
04.04.2011, 19:09     объединение лексем в единое целое #2
строка XXX-XXXX будет занимать 9 байтов, а не 8.
C++
1
2
3
4
5
6
  char* ptrnom=strtok(nomer, "-");
  int prefix =atoi(ptrnom);
 
  ptrnom=strtok(NULL, "-");
  int postfix=atoi(ptrnom);
  cout<< "[" << prefix << ":" << postfix <<"]\n";
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4920 / 2663 / 243
Регистрация: 29.11.2010
Сообщений: 7,405
04.04.2011, 22:47  [ТС]     объединение лексем в единое целое #3
спасибо, но хотелось бы получить одно число типа int а не два

Добавлено через 3 часа 32 минуты
ап...
Yandex
Объявления
04.04.2011, 22:47     объединение лексем в единое целое
Ответ Создать тему
Опции темы

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