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

Почему не работает - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Со стеком запутался http://www.cyberforum.ru/cpp-beginners/thread373494.html
Как сделать чтоб это заработало Компилирую на CodeBlocks (если есть лучше предлагайте) #include <iostream> #include <string.h> template <class Item> class STACK { private:
C++ Размещения Требуется сгенерировать все r-размещения без повторов с елементов {1...n} по в лексикографическом порядке...(r<=n) помогите пожалуйста. http://www.cyberforum.ru/cpp-beginners/thread373493.html
Непонятный формат года в tm инициализированной localtime C++
Собственно в название темы и есть вопрос - почему данный фрагмент выводит год равным не 2011, не 11, а 111? Как сделать что бы tm_year содержала год 2011 без извращенских костылей? #include <iostream> #include <time.h> #include <stdio.h> int YY; int main() { time_t t2; tm *t1; time(&t2);
C++ Помогите пожалуйста с уравнением.
Помогите это уравнение сделать. Заранее благодарен.
C++ Составить алгоритм решения неравенства ax2+bx+c<0 http://www.cyberforum.ru/cpp-beginners/thread373437.html
Доброго времени суток! Ветвлением нужно. Используя только if и else. Помогите пожалуйста! С/С++ Без использования while и функций...
C++ Ввод двумерного массива (построчно) с клавиатуры Всем Привет. Прошу вас, объясните мне простым языком, как организовать ввод двумерного массива (построчно) с клавиатуры. Вот, что у меня получилось...не понимаю, как правильно нужно делать ввод массива внутри Цикла For. {int x,y,i,a; cout<<"Enter Number String"; cin>>x; cout<<"Enter Number Columns"; подробнее

Показать сообщение отдельно
ViT(Vet@l)
27 / 26 / 2
Регистрация: 13.12.2010
Сообщений: 333
27.10.2011, 17:10  [ТС]     Почему не работает
Спасибо!
Выводит все ок, если использовать c_str
Но мне надо сравнить каждое слово с массивом.

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
string subject[5]={"I","he","she","it","they"};
    string predicate[5]={"go","stand","fly","say","run"};
    string attribute[5]={"quick", "nice", "slow", "ugly", "normal"};
 
    string str1, str2, str3;
    string str_1, str_2, str_3;
    int pos1 = 0, pos2;
 
    string sentence;
    getline(cin, sentence);
 
    while((sentence.find(" "))  != string::npos){
        pos1 = sentence.find(" ");
        sentence.replace(pos1, 1, "1");
        pos2 = sentence.find(" ");
        sentence.replace(pos2, 1, "1");
    }
 
    for(int i = 0; i < pos1; i++){
        str1[i] = sentence[i];
 
    }
    for(int i = 0; i < 5; i++){
        if(str1.c_str() == subject[i])
              cout << "a"; //не работает (не сравнивает (и без c_str тоже)
    }
 
    for(int i = 0, pos1; pos1 < pos2, i < (pos2 - pos1); pos1++, i++){
        str2[i] = sentence[pos1];
    }  
 
 
    cout << str2.c_str(); //тоже ничего не выводить
    return 0;
}
Суть программы - вводим три слова - первым должно идти слово из subject[5], вторым из predicate[5],третьим - attribute[5]. Если порядок не соблюбали - вывести как надо.
Вот теперь возникла проблема со сравнением
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru