Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КПиЯП.docx
Скачиваний:
2
Добавлен:
04.12.2018
Размер:
47.35 Кб
Скачать

Основные понятия. Типы данных.

Используемые символы

Множество символов, используемых в языке Си делятся на 5 групп:

1. Символы, которые используются для объявления идентификаторов и ключевых слов (прописные и строчные английские буквы и подчеркивание).

2. Прописные и строчные буквы русского алфавита и арабские цифры.

3. Знаки нумерации и спец.символы. Используются для организации процесса вычисления, либо для передачи компилятору определенного набора инструкций( различные скобки, знаки препинания и др.).

4. Управляющие, или разделительные, символы. Предназначены для отделения друг от друга объектов, определенных пользователем ( пробел, знаки табуляции и т.д.).

5. Управляющие последовательности. Это специальные комбинации, использующиеся в функциях ввода/вывода (\n - переход на новую строку и др.).

Константы бывают целые, с плавающей точкой, символьные ('а'), строковые литералы ("ололо").

В языке Си регистр имеет(!) значение.

Основные ключевые слова в языке Си: auto, double, int. struct, break, else, long, switch, register, typedef, char, extern, return, void, case, float, unsigned, default, for, signed, union, do if, sizeof, volatail, continue, enum, short, while.

Комментарии:

а) однострочные ( // );

б) многострочные ( /* */).

Типы данных

Имеется 2 группы типов данных:

1. Основные. Служат для представление целых чисел и чисел с плавающей точкой.

2. Производные. К ним относят массивы, строки, структуры, объединения, указатели и т.д.

Основными целочисленными являются char, int, short, long, причем каждый из них имеет 2 разновидности: со знаком(signed) и без знака(unsigned).

К числам с плавающей точкой относятся float, double, long double.

Тип данных "перечисление" - enum.

Структура программы

#include <iostream>

using namespace std;

int main()

{ cout <<"Добро пожаловать в С++!\n";

return 0;

}

Программа С++ строится из отдельных блоков, называемых функциями.

Данная программа содержит следующие основные элементы:

1. Директива препроцессора #include.

2. Директива using namespace.

3. Заголовок функции int main().

4. Тело функции, ограниченное фигурными скобками.

5. Оператор, в котором для вывода сообщения на экран используется объект cout.

6. Оператор return, завершающий выполнение функции.

Функция main

Данная функция состоит из 2 частей: заголовка и тела. Заголовок функции в краткой форме определяет интерфейс между функцией и основной частью программы. Тело функции определяет то, что данная функция будет делать.

Препроцессор С++ и файл iostream

При создании исполняемого кода С++ использует препроцессор - это программа, которая обрабатывает исходный файл перед компиляцией.

#include <iostream> приводит к тому, что препроцессор добавляет в программу содержимое файла iostream.

Библиотеки: math.h <-> cmath, stdio, stdlib, conio - файлы включения.

Область имен

Выражения. Операторы.

Оператор присваивания

В качестве знака используется знак "=". Общий вид: v=e. Операция выполняется справо налево. Есть расширение данной операции, ron=e, где вместо ron могут быть знаки "+","-","*" и др. Раскрывается это выражение как v=ron e. Например a+=2 раскрывается как a=a+2.

Арифметические операции

Они делятся на бинарные(+,-,*,/,%) и унарные(++,--) - они увеличивают или уменьшают рядомстоящий операнд на 1.

Префикс: ++(--) операнд

Постфикс: операнд ++(--)

Если знак операции стоит перед операндом, результатом операции является увеличенное или уменьшенное значение операнда. Если знак стоит после операнда, результатом операции будет значение операнда и лишь после его использования он увеличится или уменьшится на 1.

Например: int i=0, j=0,k,l;

k=++i; //k=1 ,i=1

l=j++; //l=0 ,j=1

--k; //k=0

++j; //j=2

k=++i <-> i=i+1, k=i;

k=i++ <-> k=i, i=i+1;

Операции операции

int a; >,<,>=,<=, ==(полное равенство), !=(неравенство).

Логические операции

Унарная операция логического НЕ (!). Операция дает 0, если операнд ненулевой, и 1, если равен 0.

Бинарная операция логического И (&&). Результат операции равен 1, если оба операнда имеют ненулевое значение. Если хотя бы один операнд равен 0, то результатом операции будет 0.

Бинарная операция логического ИЛИ (||). Результат операции равен 0, если оба операнда равны 0, и 1 - в противном случае.

Побитовые операции

1. Операция поразрядного И (&).

2. Операция поразрядного ИЛИ (|).

3. Операция поразрядного исключающего ИЛИ (^).

4. Унарная операция поразрядного отрицания (~).

Сдвиги

Обозначаются << или >>. Они осуществляют сдвиг влево или вправо своего операнда на указанное число битовых позиций.

Например: x<<2 (*4) и x>>2 (/2^n).

Тернарная операция

В общем виде:

операнд1?операнд2:операнд3

Первый операнд может быть целого или плавающего типа. Для данной операции важно, является ли значение первого операнда истинным или ложным. Если значение ложно, то вычисляется значение третьего операнда и его значение будет результатом данной операции. Если значение первого операнда истинно, то вычисляется операнд2 и его значение будет результатом операции.

Например:

max=a<=b?b:a

Операция следования

Обознаяается ",". Выражение разделенное этим знаком выполняется слева направо строго в том порядке, в котором они перечислены.

int a=3,b=8,c;

c=a++,a+b; //a=4,c=12;

(b--,c)*=3; //b=7, c=36.

Явное и неявное преобразование типов

Разрешены любые преобразования стандартных типов одного к другому. При преобразовании более длинного типа к более короткому происходит потеря разрядов. Явное преобразование стандартных типов производится в 2 формах:

1) (имя_типа) операнд

2) имя_типа(операнд)

double d=(double)5; -> 5.00

int i= int(d);

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]