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

Пропускается строка кода - C++

Восстановить пароль Регистрация
 
BiTwaR
0 / 0 / 0
Регистрация: 12.11.2009
Сообщений: 21
24.02.2011, 18:32     Пропускается строка кода #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
#include "stdafx.h"
#include "conio.h"
#include <string>
#include <iostream>
using namespace std;
 
int keyboard ()
{
    string s;
    cout << "Enter string to process: ";
    getline (cin, s); //Вот эта строка пропускается при выполнении
    cout << "Converted string: " << s << endl;
    return 0;
}
int file ()
{
    return 0;
}
int _tmain()
{
    int choose;
    cout << "Choose string source: 1 - keyboard, 2 - file." << endl;
    cin >> choose;
    if (choose==1)
    {
        keyboard ();
    }
    _getch();
    return 1;
}
При выполнении программы пропускается выделенная строка кода. Если вместо нее написать cin >> s, то все нормально, но при выводе этой строки на экран выводится только первое слово.
Только сегодня начал изучать С++

И еще один небольшой вопрос: Смысл программы в том, чтобы зашифровать введеную строку с клавиатуры или строку из файла перестановкой букв в опр. порядке. С каким типом переменных удобней работать в C++ string или char? Как я понял разница не особо большая, но в основном используют char.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.02.2011, 18:32     Пропускается строка кода
Посмотрите здесь:

C++ Строка кода
Почему то пропускается условие C++
C++ class Person - Пропускается инициализация femeli
Многопутевое слияние. Пропускается элемент с индексом 1 C++
Пропускается ввод C++
C++ При вводе информации пропускается запрос на продолжение
Пропускается cin.getline C++
Пропускается первый оператор чтения строки с клавиатуры C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
24.02.2011, 18:40     Пропускается строка кода #2
Цитата Сообщение от BiTwaR Посмотреть сообщение
но в основном используют char.
Как раз-то в С++ используют класс std::string, а не Си-строки.

Добавлено через 30 секунд
Цитата Сообщение от BiTwaR Посмотреть сообщение
Как я понял разница не особо большая
Увы, значит плохо поняли.

Добавлено через 1 минуту
Перед
Цитата Сообщение от BiTwaR Посмотреть сообщение
C++
1
getline (cin, s);
вставь
C++
1
cin.sync();//Очищение потока
Yandex
Объявления
24.02.2011, 18:40     Пропускается строка кода
Ответ Создать тему
Опции темы

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