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

C++ простейшая программа - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 24, средняя оценка - 4.71
lastfin
10 / 10 / 0
Регистрация: 06.02.2012
Сообщений: 52
06.02.2012, 21:27     C++ простейшая программа #1
Пару дней, как начал учить с++ и вот как бы первая проблема:


C++
1
2
3
4
5
6
7
8
9
10
11
12
#include "std_lib_facilities.h"
 
int main()
{
   setlocale(LC_CTYPE,"RUS");
    cout << "Пожалуйста, введите ваше имя (на англ.) (затем нажмите 'Enter')\n";
    string first_name="???";
    
    cin >>first_name
    cout << "Hello," <<first_name << '\n';
    system("pause");
}
 Комментарий модератора 
Используйте теги форматирования кода!


Буду очень признателен, если кому-нибудь не лень показать ошибку. Компилятор подчеркивает второй по счету оператор cout
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.02.2012, 21:27     C++ простейшая программа
Посмотрите здесь:

Простейшая графика C++
C++ Простейшая... незавершаемая программа под Windows
C++ ребят!!простейшая программа!!
Простейшая программа с массивом C++
C++ Простейшая задача
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ITDeveloper
 Аватар для ITDeveloper
85 / 85 / 5
Регистрация: 14.01.2011
Сообщений: 263
06.02.2012, 21:31     C++ простейшая программа #2
Не хватает ";" после cin >>first_name


cin >>first_name;
cout << "Hello," <<first_name << "\n";
Schtrich
weboman
 Аватар для Schtrich
207 / 192 / 11
Регистрация: 13.08.2010
Сообщений: 1,526
Записей в блоге: 6
07.02.2012, 07:03     C++ простейшая программа #3
дей-но, обращайте внимание на ошибки которые выдает компилер, а если спрашиваете на форуме, то и указывайте то что у вас в ошибке пишется, я бы еще к вашей программе using namespace std; добавил перед int main()
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
07.02.2012, 13:35     C++ простейшая программа #4
Цитата Сообщение от AlienNation Посмотреть сообщение
я бы еще к вашей программе using namespace std;
А я бы std:: при каждом использовании идентификаторов, в этом std объявленных. Дело вкуса.
-=ЮрА=-
Заблокирован
Автор FAQ
07.02.2012, 13:37     C++ простейшая программа #5
Цитата Сообщение от lastfin Посмотреть сообщение
cout << "Hello," <<first_name << '\n';
запиши так
C++
1
cout << "Hello," <<first_name.c_str() << '\n';//И не мучайся...
TheAthlete
 Аватар для TheAthlete
151 / 151 / 12
Регистрация: 31.08.2010
Сообщений: 529
07.02.2012, 18:36     C++ простейшая программа #6
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
first_name.c_str()
А зачем вообще здесь вызывать c_str()?
-=ЮрА=-
Заблокирован
Автор FAQ
07.02.2012, 18:53     C++ простейшая программа #7
Цитата Сообщение от TheAthlete Посмотреть сообщение
А зачем вообще здесь вызывать c_str()?
- не у всех(верней не на всех компиляторах такое получается) cout выводит std::string напрямую(грешным делом думал что ТС именно с этой проблеммой столкнулся) метод std::string::c_str() позволяет получать содержимое строки в виде const char *, которое легко выводится в контекст консоли. Вчитавшись в топик вижу что его автор забыл точку с запятой поставить, ну что ж он волен проигнорировать мой пост...
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
07.02.2012, 18:56     C++ простейшая программа #8
-=ЮрА=-, Любой С++ компилятор обязан реализовывать ввод/вывод std::basic_string<char, std::char_trairs<char> > и std::basic_string<wchar_t, std::char_traits<wchar_t> >... Если не реализовывает - в топку.
lastfin
10 / 10 / 0
Регистрация: 06.02.2012
Сообщений: 52
07.02.2012, 22:36  [ТС]     C++ простейшая программа #9
Унылая ошибка из-за невнимательности, даже никто никуда не послал. Нетипичный российский форум) Спасибо.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
cout << "Did you see " << friend_name << " yesterday(+/-)\n";
char answer; 
    cin >> answer;
        
            if (answer = '-')
            
                cout << "Please, phone him" 
                <<endl; 
            
        if (answer = '+') 
            cout << "He will phone to you today"
        <<endl;
        else 
            cout << "You do it wrong"
            <<endl;
Кусок программы.
Опять же, в чем проблема здесь? Предполагается, что в случае если ответ не "+" или "-", должен выводится оператор else, однако происходит черт знает что. В случае, если вводится "-" программа выводит оба первых выражения.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.02.2012, 22:57     C++ простейшая программа
Еще ссылки по теме:

C++ Простейшая структура
Простейшая программа. Зацикливание. Где ошибка? C++
Простейшая программа, вывод на экран суммы, разности двух чисел. Ошибка C++

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

Или воспользуйтесь поиском по форуму:
-=ЮрА=-
Заблокирован
Автор FAQ
07.02.2012, 22:57     C++ простейшая программа #10
Цитата Сообщение от lastfin Посмотреть сообщение
if (answer == '-')
Цитата Сообщение от lastfin Посмотреть сообщение
if (answer == '+')
И заработаетЛогическое сравнение == а одно равно - это присваивание, т.е вместо того чтобы сравнивать answer с - или + ты присваивал ему значение + или минуса, вот

Добавлено через 16 секунд
Цитата Сообщение от lastfin Посмотреть сообщение
if (answer == '-')
Цитата Сообщение от lastfin Посмотреть сообщение
if (answer == '+')
И заработаетЛогическое сравнение == а одно равно - это присваивание, т.е вместо того чтобы сравнивать answer с - или + ты присваивал ему значение + или минуса, вот

Добавлено через 2 минуты
lastfin, вот твой код в божеском виде + там одного else не хватало
C++
1
2
3
4
5
6
7
8
9
10
cout << "Did you see " << friend_name << " yesterday(+/-)\n";
char answer; 
cin >> answer;
if (answer == '-')
    cout << "Please, phone him"<<endl; 
else//Вот его надо было тоже
if (answer == '+') 
    cout << "He will phone to you today"<<endl;
else 
    cout << "You do it wrong"<<endl;
Добавлено через 4 минуты
lastfin, чтоб ты понял зачем else добавил
Предположим его нет и ты нажал минус что будет
Программа пропечатает "Please, phone him" и думаешь на этом всё окончится - неа - алгоритм пойдёт дальше. что мы встречаем
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
if (answer == '+')
а ведь у нас минус, и что будет делать программа - она пропечатает You do it wrong, т.к. минус не плюс. Другое дело когда вводим else - введи минус в условие к плюсику уже не попадём

Добавлено через 12 секунд
lastfin, чтоб ты понял зачем else добавил
Предположим его нет и ты нажал минус что будет
Программа пропечатает "Please, phone him" и думаешь на этом всё окончится - неа - алгоритм пойдёт дальше. что мы встречаем
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
if (answer == '+')
а ведь у нас минус, и что будет делать программа - она пропечатает You do it wrong, т.к. минус не плюс. Другое дело когда вводим else - введи минус в условие к плюсику уже не попадём

Добавлено через 9 минут

Не по теме:

PS

Цитата Сообщение от ForEveR Посмотреть сообщение
-=ЮрА=-, Любой С++ компилятор обязан реализовывать ввод/вывод std::basic_string<char, std::char_trairs<char> > и std::basic_string<wchar_t, std::char_traits<wchar_t> >... Если не реализовывает - в топку.
- я не на столько категоричен

ForEveR, когда умрёт последний человек пишущий в стареньком borland C, turbo C, VS 6.0 и т.д., тогда перейду на менее архаичный компилятор, до того в мире будет "последний могиканин", который умеет писать на рухляди
Кстати свободно пишу в 9-ке, при этом она мне даже помогает писать код который приемлим всем семейством студий от 6-й до 9-й. Вот сядь когда-нибудь за лупоглазый монитор с системником с Floppy A и Win98 SP1 со студией на борту и попробуй чё-нить написать - увидишь сильно ли имеющиеся знания пригодились...

Yandex
Объявления
07.02.2012, 22:57     C++ простейшая программа
Ответ Создать тему
Опции темы

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