C.Основы.Введение

C.Основы.Введение

https://t.me/HotCheatSheet
Комментарии

// текст — однострочный

/* текст */ — многострочный


Идентификатор

Последовательность букв, цифр и символов подчерки­вания "_", которая не должна начинаться с цифры.

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


Ключевые слова

sizeof — для указания операции получения размера объекта

typedef — для описания прототипа объекта

auto, register — для объявления переменных:для обозначения класса хранения переменных

extern — для обозначения того, что объект описывается в другом месте

static — для обозначения того, что объект статический

char, short,int, long, signed, unsigned,float, double, void — для обозначения типа переменных

struct, enum, union — для обозначения специальных типов данных:

do, for, while — для обозначения операторов и их элементов:для обозначения операторов цикла

if, else — для обозначения условного оператора:

switch, case, default — для обозначения оператора выбора

break, continue — для обозначения операторов перехода:операторы прерывания исполнения кода

goto — для обозначения оператора безусловного перехода

return — для обозначения оператора возврата из функции

inline(C99) — для обозначения того, что функция является встраиваемой:

_Bool, _Complex, _Imaginary(C99) — для обозначения того, что функция является встраиваемой:

restrict(C99) — для обозначения того, что объявляемый указатель указывает на блок памяти, на который не указывает никакой другой указатель:


Литерал

Примеры числовых литералов:

10 — число 10 в десятичной форме;

0хА — число 10 в шестнадцатеричной форме (префикс 0х);

0b1010 — число 10 в двоичной форме (префикс 0b);

012 — число 10 в восьмеричной форме (префикс 0);

10.5 — число с плавающей точкой;       

105е-1 — число 10,5 в экспоненциальной форме (105 * 10**-1);

10U — беззнаковая константа (суффикс U);

10L — знаковая константа (суффикс L).

Примеры символьных литералов(escape-последовательности):

Символьные литералы заключаются в одинарные кавычки.

'\а' — звуковой сигнал

'\b' — клавиша <Backspace>                                                     

'\f' — прогон листа

'\n' — символ перевода строки

'\r' — возврат каретки                                     

'\t' — горизонтальная табуляция

'\v' — вертикальная табуляция

'\0' — нулевой символ

'\\' — обратная косая

'\'' — апостроф

Примеры строковых литералов:

Строковые литералы заключаются в двойные кавычки. В памяти хра­нятся как последовательности символов, заканчивающиеся нулевым символом '\0'

"" — пустая строка: один символ '\0'

"В" — два символа: 'В' и '\0'

"A\tB\n" — пять символов: 'А', табуляция, 'В', перевод строки, '\0'


Операторы

; — пустой оператор

( ) — круглые скобки

[ ] — элемент массива

.(точка) — обращение к элементу структуры

-> — обращение к элементу структуры, опреде­ленной указателем

++, --(постфиксы) — операторы  автоинкремента  и  автодекре­мента после того как выражение, в котором задействованы соответствующие операнды, вычислено.

++, --(префиксы) — операторы  автоинкремента  и  автодекре­мента перед тем как выражение, в котором задействованы соответствующие операнды, будет вычислено.

! — логическое (унарное) отрицание

~ — поразрядное отрицание

& — адрес

+, -(унарные) — изменение знака операнда

* (унарный) — разыменование указателя

* (бинарные) — умножение

/ — деление

% — остаток от деления

+, -(бинарные) — сложение и вычитание

<<  — поразрядный сдвиг влево

>>  — поразрядный сдвиг вправо

<, >, <=, >= — меньше, больше и т.д.

==, != — равно, не равно

& — лоразрядное "И"

^ — лоразрядное "Исключающее ИЛИ"

| — лоразрядное "ИЛИ"

&& — логическое "И"

|| — логическое "ИЛИ"

= — присваивание, возможны также сочетания оператора при­сваивания с арифметическими и поразряд­ными операторами


Директивы препроцессора

#include <заголовочный_файл> — включить в файл с исходным кодом программы текст внешне­го заголовочного файла

#defineимя_константы значение — объявить именованную константу

#undef имя_константы — отменить объявленную именованную константу


Директивы условной компиляции

#ifdef имя_макроса  последовательность_операторов_1 
#else  последовательность_операторов_2 
#endif

#ifndef имя_макроса  последовательность_операторов_1 
#else  последовательность_операторов_2 
#endif

#if выражение1  последовательность_операторов_1 
#elif выражение2  последовательность_операторов_2
#else  последовательность_операторов_3 
#endif
Скелет программы
#include <stdio.h> // подключаем заголовочный файл stdio.h
int main() // объявляем главную функцию программы
{  // открываем вычислительный блок
    printf("Hello, world!");  /* используем функцию printf из заголовочного файла stdio.h и выводим "Hello, world!" на устройство стандартного вывода, не забываем ';' !!! */
    return 0;  // объявляем успешное окончание 
} // закрываем вычислительный блок

Report Page