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

Разбить на лексемы и вывести в обратном порядке - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Защита ввода http://www.cyberforum.ru/cpp-beginners/thread598051.html
Подскажите как осуществить защиту от неправильного ввода то есть если переменная типа int как сделать так что бы пользователь не мог вводить ничего кроме цифр?:) Добавлено через 59 секунд...
C++ Где увидеть тело функции system(); ? Здравствуйте, меня всегда интересовало где можно увидеть тела некоторых функций, например system(); Если перейти в стандартную библиотеку, то там есть только объявление, а определение где?... http://www.cyberforum.ru/cpp-beginners/thread598022.html
перегрузка оператора сдвига C++
Всем привет!Помогите пожалуйста с задачей!! Есть класс class st{ char fi; int age; } необходимо перегрузить операцию сдвига для записи в бинарный файл массива объектов типа st, как...
Написать программу/функцию. Объявление переменных C++
Доброго всем времени суток! Помогите пожалуйста решить неопытному начинающему юзеру задачки) 1)Написать программу вывода значений переменных а, b и с (типа float) с пятью цифрами целой...
C++ Как передать в функцию несколько аргументов, и другие глупые вопросы http://www.cyberforum.ru/cpp-beginners/thread598000.html
Доброго времени суток. Накопилось несколько вопросов, от простых до очень простых, и все же нужную информацию по ним не нашел. Глупо для каждого создавать свою тему, поэтому задам все в одной) ...
C++ Ввод и вывод в файл В текстовом файле INPUT.TXT записаны целые числа через пробел, возможно, в несколько строк. За один просмотр файла сформировать список этих чисел. Вставить новый элемент в список за каждым вхождением... подробнее

Показать сообщение отдельно
Dezzered
Сообщений: n/a
07.06.2012, 16:29
Есть программа которая вводит строку текста, разбивает ее на лексемы и выводит лексемы в обратном порядке, работает в dev c++,но отказывается работать Microsoft Visual C++, исправте пожалуйста.

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
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(void){
    char buf[1000], **words, *p;
    int cnt, i;
    while (true){
        printf("String: ");
        gets(buf);
        if ( *buf == '\n')  
            break;
        words = NULL;
        cnt = 0;
        for ( p = strtok(buf, " .,;:!?\t\n"); p != NULL; p = strtok(NULL, " .,;:!?\t\n") ){  
            words = (char**)realloc(words, sizeof(char*) * (cnt + 1));  
            words[cnt] = strdup(p); 
            ++cnt; 
        }
        if ( words == NULL || cnt == 0 )  
            return 1;
        printf("Reverse words:\n"); 
        for ( i = cnt - 1; i >= 0; --i ){
            printf("%s ", words[i]);
        printf("\n");
        for ( i = 0; i < cnt; ++i )  
            free(words[i]);
        free(words);
    }
    return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru