Урок 1: “Привет программисту на С++!”
Если честно, о С++ я не хотел писать вообще. Слишком много в сети есть различных ресурсов, посвященных этому языку. Кроме того, имеются отличные учебники.
Однако, столкнувшись с тем, что мой напарник по игрописанию не владеет C++, я придумал курс, который должен максимально быстро и качественно помочь освоить программирование на С++. В данном курсе мы разучим основы С++, затем будем программировать в Windows на C++ Builder и VC++, напишем несколько игр, и когда у вас будет солидная теоретическая база, изучим программирование для Linux (сейчас это направление особенно актуально).
Думаю, план вам ясен. Теперь приступим.
Язык С++ объектно-ориентированный. То есть он оперирует некоторыми сущностями –объектами, описанными с помощью классов. В то же время он является низкоуровневым языком, позволяющим обращаться к ячейкам памяти и изменять значения в регистрах процессорах. С++ одинаково подходит как для написания операционных систем и драйверов, так и для прикладных программ типа MS Office. Ну и для вашего развития скажу, что его написал Бьярн Страупструп, взяв за основу язык С. Фактически, С++ это расширение С. В этом его сила и его слабость. Все это мы рассмотрим в дальнейшем.
Для программирования на С++ нам понадобиться какая-нибудь IDE (интегрированная среда разработки). На сайте Microsoft можно скачать бесплатную версию MS Visual C++ Express, которой хватит на половину наших уроков. Кроме VC++ можно использовать Code Gear C++ Builder (когда-то он был борландовским), CodeBlocks (бесплатная), NetBeans c расширением C++ (бесплатная) или BloodSheed Dev C++ (бесплатная). В наших уроках я буду использовать VC++ Express, но вы вольны выбрать любую на ваш вкус.
Итак, запустим нашу IDE и создадим проект Win32. В настройках выберем ConsoleApplication. Назовем проект lesson1.
В появившемся окне набьем такой текст:
#include "stdafx.h" #include <iostream> //содержит объекты ввода-вывода #include <locale.h> //настройки локализации using namespace std; int _tmain(int argc, _TCHAR* argv[]) { setlocale (0,""); //установим язык по-умолчанию (русский) char name [20] ; // статический массив для имени, хотя //дальше вместо него будем использовать тип string cout<<"Введите ваше имя"<<endl; cin>>name; //вводим имя cout<<"Привет "<<name <<" !"<<endl <<"Ты сегодня начал изучать C++. Это здорово!"<<endl; system ("pause"); //чтобы окно не закрылось return 0; }
Нажмем клавишу F9. Произойдет компиляция вашей первой программы.
Поздравляю, вы написали свою первую программу.
Немного объясню текст
#include <iostream> (смотреть по аналогии с другими) указывает компилятору включить в текст программы заголовочный файл с необходимымии функциями и классами. Заголовочный файл – это специальный файл C++, представляющий по сути отдельный модуль, содержащий директивы препроцессора, функции либо еще какие-либо данные. Если вам пока не понятно, пропустите это.
#include <locale.h> содержит функции для работы с локализацией программы. Если вы не включите этот файл и не используете функцию setlocale с параметрами (0,””), то русские надписи будут выводиться в виде нечитабельных иероглифов.
Далее мы указываем на использование пространства std – using namespace std, в котором хранятся нужные нам объекты cout и cin.
Далее используется функция main, являющая точкой входа в вашу программу. Без нее программа просто не запустится. Подробнее мы рассмотрим позже. Объект cout с переопредленным оператором << позволяет вывести информацию на устройство, cin>> — считать инофрмацию с клавиатуры. В С для этих целей применялись функции printf () и scanf (). Мы рассмотрим их в других уроках, но они нам мало пригодятся.
char name [20] означает символьный массив. Пока примите это к сведению. Более подробно мы рассмотрим это в уроке 3.
system (“pause”) –специальная функция, предназначенная для работы с системой. У нее есть и другие параметры, но нам пока нужен этот для торможения системы.
Ну вот, вы написали первую программу, которую тут же разобрали. Теперь можно переходить к уроку 2.