- •Введение
- •Глава 1. Основы.
- •Int main()
- •1.2. Методика создания программ в Microsoft Visual Studio.
- •Void main(){
- •1.3. Ввод-вывод.
- •1.4. Переменные и константы.
- •Int I; // объявление целочисленной переменной
- •42 // Десятичная константа
- •0X42 // шестнадцатеричная константа, начинается с 0х
- •042 // Восьмеричная константа, начинается с 0
- •1.5. Арифметические операции.
- •Void main()
- •1.6. Встроенные функции. Математические функции. Состав math.H.
- •Void main()
- •Int rand(void); // функция используется без аргумента
- •Глава 2. Операторы и выражения.
- •2.1. Логические выражения и операторы
- •2.1.1. Оператор if else
- •If (условие)
- •If (условие)
- •2.1.2. Конструкция if else if
- •Int number;
- •Int number;
- •2.1.3. Условный оператор.
- •2.1.4. Оператор switch.
- •Int dvalue;
- •2.2. Операторы цикла.
- •2.2.1. Оператор for
- •Void main()
- •Int I; // создаем переменную цикла
- •Void main()
- •Int I; // переменную цикла можно определить и вне цикла
- •2.2.2. Изменение шага цикла
- •Void main()
- •2.2.3. Цикл while.
- •2.2.4. Цикл do while
- •Void main()
- •2.3. Операторы break и continue
- •Void main()
- •Void main()
- •2.4. Типичные ошибки при использовании операторов цикла
- •Глава 3. Производные типы данных.
- •3.1. Ссылки и указатели.
- •Int test; // объявили целочисленную переменную
- •Int & s_test; // ошибка! ссылка не связана с переменной
- •Int *p1; // объявлен указатель на целое с именем p1
- •3.2. Массивы и строки.
- •Int z[10]; //массив из 10 целых чисел
- •Int ar[3]; // объявлен целочисленный массив из 3 элементов
- •Int varr[4]; // объявление массива
- •3.2.2. Многомерные массивы.
- •Int z[3][4]; //массив из 12 целых чисел
- •3.2.3. Строки
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •If(strstr(st,st2)) //если подстрока встречается, выводим
- •3.1.5. Динамическое определение одномерных массивов.
- •3.1.6. Динамические двумерные массивы.
- •3.1.7. Указатели, массивы и арифметика указателей.
- •Int tacs[3];
- •Void main()
- •3.2. Структуры
- •Int age; // элементы структуры
- •Int hours;
- •Int mins;
- •Void main()
- •Int hours;
- •Int mins;
- •Void main()
- •4. Функции, определяемые пользователем
- •4.1. Объявление и определение функции
- •Int max(int , int ); // в прототипе достаточно указать только тип и
- •Void main() {
- •Int MyRand(){
- •Int func(){ return 1;} // правильное выражение
- •Int func2(){return 0.146;} // неправильно, 0.146 преобразуется к int с
- •Void swap(int p, int q)
- •Int bigger(int a,int b)
- •4.2. Передача параметров функций
- •5. Заголовочные файлы.
- •6. Работа с файлами
- •6.1 Простой файловый ввод/вывод
- •6.2 Тонкости работы с файлами
- •7.1. Определение классов.
- •Void main()
- •7.2. Как объявлять функции класса?
- •7.3. Конструкторы и деструкторы классов.
- •8. Графика OpenGl.
- •Void callback Draw()
- •Void main()
- •8.1. Создание анимации с помощью библиотеки xgl
- •Приложения Управление выводом
- •Управление шириной вывода
1.4. Переменные и константы.
Наша первая программа совсем не использовала данных, а только выводила на экран нехитрое приветствие. Для хранения и обработки данных программы используют переменные. Иногда можно встретить упрощенное, но довольно точное определение переменной.
Переменные - это именованные ячейки памяти, в которых хранятся данные и над которыми программы выполняют вычисления.
Для переменных рекомендуется выбирать имена, имеющие смысл. При этом следует руководствоваться правилами:
в именах можно использовать буквы латинского алфавита, цифры и символ подчеркивания;
первый символ не может быть цифрой;
в качестве имен нельзя использовать ключевые слова языка с++;
символы верхнего и нижнего регистров рассматриваются как разные.
Если требуется образовать имя из двух или более слов, то обычно слова разделяют символами подчеркивания, например: my_date.
Как уже упоминалось, переменные ассоциируются с данными. В С++ используются две группы данных: основные и производные от них. Основные типы данных служат для представления целых и вещественных чисел:
int - хранит целое число от -2147483648 до +2147483647 (занимает 4 байта);
double - хранит число с плавающей точкой двойной точности (занимает 8 байт). Вещественное число может быть представлено десятичной дробью (например, 76.342) или в так называемом экспоненциальном виде: -18.32e13 (что означает -18.32∙1013 ). В приведенном примере -18.32 называется мантиссой, а 13 – показателем степени числа 10. Максимальный показатель степени для типа double составляет 308, а минимальный -307.
Общепризнано, что для удовлетворения потребностей программирования нельзя обойтись только одним типом целочисленных и одним типом вещественных данных. Поэтому используются также типы
short - хранит целое число от -32768 до +32767 (занимает 2 байта);
float - хранит число с плавающей точкой одинарной точности (занимает 4 байта), максимальный и минимальный показатель степени 38 и -37 соответственно;
а также
char - в основном, используется для хранения символов, численных значений от ‑128 до +127 (занимает 1 байт).
Есть еще и другие типы, но эти – наиболее популярные.
В С++ работает строгое правило – все переменные, до того как будут использованы, должны быть определены. При этом не важно, в каком месте программыНапример, так:
Int I; // объявление целочисленной переменной
double as, ptr; // одновременное объявление двух переменных типа double,
// обратите внимание где ставятся запятая и точка с
// запятой
После объявления переменной её значение ещё не определено. В программе допускается одновременно с объявлением переменной задать её значение или инициализировать:
int j, k=0, ini=1; // j – не определено, k равно 0, ini равно 1
В C++ определена операция присваивания =, а не оператор присваивания, как в некоторых языках. Таким образом, присваивание может встречаться в неожиданном контексте:
x=sqrt(a=3*x); // сначала выполняются действия внутри скобок
a=b=c; // присваивание переменной b, затем переменной a значения c.
Наряду с переменными в программе используются константы.
Константа – это число записываемое явным образом.
Так, 211 – целочисленная, а 5.123 – вещественная константа. Зачастую в программе нужно использовать постоянное повторяющееся число, например число . Удобно объявить его константой, определить значение и использовать многократно. По правилам С++ значение константы следует задавать одновременно с описанием:
const double pi=3.14159; // приближенное определение . Тип и
// значение обязательны!
double r=2,s;
s=2*pi*r; // вычисляем длину окружности.
Запомните, что в ходе выполнения программы значение константы pi изменять нельзя, впрочем, сделать этого вам не позволит компилятор, выдав сообщение об ошибке.
Другие примеры:
const int months=12;
const double alf=1878.12
Как вы знаете, десятичная система счисления не единственная. В программирование весьма популярны шестнадцатеричная и восьмеричные системы. Язык С++ позволяет задавать константы в восьмеричном или шестнадцатеричном формате (системе счисления). Правило их задания в С++ понятно из примеров: