Здравствуйте, уважаемые подписчики. Сегодня будет первый из мини-выпусков, посвященный потоку ввода. Это ознакомительный выпуск, просто рассказывающий как можно использовать поток ввода в простых приложениях без подробностей.
Немного слов о том, что мы планируем делать дальше. Теперь выпуски будут выходить в среднем 2 раза в неделю. В следующих выпусках так же кратко мы планируем рассказать об указателях, массивах и прочих мелких вещах, унаследованных
С++ от С. После рассказа обо всех этих основах мы планируем уже начать выпускать собственно темы, ближе соответствующие названию рассылки (то есть чуть более углубленное понимание С++).
А пока что введение в поток ввода.
В прошлых выпусках мы постоянно использовали поток вывода cout, с помощью которого было довольно просто отображать на консоль все стандартные типы данных. Поток ввода аналогично позволяет с той же легкостью производить ввод с консоли всех этих типов данных. Переменная для
этого потока называется cin. Все выглядит очень похоже на cout. Из примера все должно стать понятно.
#include "iostream" using namespace std;
int main() { int a = 10; cout << "a = " << a << endl; //Вывод a = 10 cin >> a; //Ввод целого числа cout << "a = " << a << endl; }
После запуска программа
выведет a = 10 и будет ожидать ввода пользователем числа. После того как пользователь его введет, дальше в переменной a будет это число, которое будет выведено в следующей строке. Все очень просто и понятно.
Однако если пользователь введт вместо числа что-нибудь другое вроде "asdada", то в переменную a ничего не будет записано, сохранится значение 10. Поэкспериментируйте с вводом (например, можно попытаться ввести "100asdsd").
Так же, как и с потоком вывода, из потока
ввода можно подряд получать несколько значений.
#include "iostream" using namespace std;
int main() { int a = 10; int b = 100; cin >> a >> b; cout << "a = " << a << ", b = " << b << endl; }
На этом все, советую попытаться использовать и другие типы данных (char, double) для ввода. Любые вопросы
и предложения присылайте на thinkingc@qt-prog.ru