Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Lektsiya_3_2

.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
116.74 Кб
Скачать

Лекція 3

Введення в С

1. Алфавіт та словник мови С

ANSI C99

C11 (ISO/IEC 9899:2011).

A … Z;

a … z;

0 … 9.

Таблиця 3.1

Символ

Назва

Символ

Назва

,

кома

!

знак оклику

.

крапка

|

вертикальна риска

;

крапка з комою

/

риска, нахилена вправо (слеш)

:

двокрапка

\

риска, нахилена вліво

?

знак питання

~

тильда

'

апостроф

_

символ підкреслювання

(

ліва кругла дужка

#

знак номера

)

права кругла дужка

%

відсоток

{

ліва фігурна дужка

&

амперсанд

}

права фігурна дужка

^

стрілка вгору

<

знак «менше»

-

знак мінус

>

знак «більше»

=

знак дорівнює

[

ліва квадратна дужка

+

знак плюс

]

права квадратна дужка

*

знак множення

Таблиця 3.2

Спеціальний символ

Шістнадцяткове значення в ASCII-коді

Назва

\n

0A

новий рядок

\t

09

горизонтальна табуляція

\v

0B

вертикальна табуляція

\b

08

видалення попереднього символу

0D

повернення каретки

\f

0C

нова сторінка

07

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

\'

27

апостроф

\"

22

подвійні лапки

\\

5C

зворотній слеш

\?

3F

знак питання

\ddd

 

байтове значення у вісімковому представленні

\xdd

 

байтове значення в шістнадцятковому представленні

Таблиця 3.3

Операція

Назва

Операція

Назва

!

логічне НІ

?:

умовна операція

~

зворотній код

++

інкремент

+

додавання, унарний плюс

--

декремент

-

віднімання, унарний мінус

=

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

*

множення, непряма адресація

!=

не рівне

/

ділення

==

рівне

%

остача від ділення

+=

присвоювання з додаванням

<<

зсув вліво

-=

присвоювання з відніманням

>>

зсув вправо

*=

присвоювання з множенням

>

більше

/=

присвоювання з діленням

<

менше

%=

присвоювання із остачею від ділення

>=

більше або рівне

>>=

присвоювання із зсувом вправо

<=

менше або рівне

<<=

присвоювання із зсувом вліво

&

порозрядне І; адресація

&=

присвоювання з порозрядним І

|

порозрядне включаюче АБО

|=

присвоювання з порозрядним включаючим АБО

^

порозрядне виключаюче АБО

^=

присвоювання з порозрядним виключаючим АБО

&&

логічне І

||

логічне АБО

,

послідовне виконання (кома)

?:

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

2. Базові типи даних.

char

int

float

double

void

signed, unsigned, long, short

Таблиця 3.4

Тип

Розмір в бітах

Мінімальний діапазон (стандарт С11)

char

8

від -127 до 127

unsigned char

8

від 0 до 255

signed char

8

від -127 до 127

int

16 або 32

від -32767 до 32767

unsigned int

16 або 32

від 0 до 65535

signed int

16 або 32

такий самий, як у int

short int

16

від -32767 до 32767

unsigned short int

16

від 0 до 65535

signed short int

16

такий самий, як у short int

long int

32

від -2 147 483 647 до 2 147 483 647

long long int

64

від -(263-1) до (263-1), доданий стандартом C99

signed long int

32

такий самий, як у long int

unsigned long int

32

від 0 до 4 294 967 295

unsigned long long int

64

від 0 до (264-1), доданий стандартом C99

float

32

від 1E-37 до 1E+37, з точністю не менше 6 значущих десяткових цифр

double

64

від 1E-37 до 1E+37, з точністю не менше 10 значущих десяткових цифр

long double

80

від 1E-37 до 1E+37, з точністю не менше 10 значущих десяткових цифр

signed

signed int

unsigned

unsigned int

long

long int

short

short int

ASCII

_Bool

true

false

<stdbool.h>

bool, true та false

3. Константи

0

0х або 0Х

0х<шістнадцяткові цифри>або 0Х<шістнадцяткові цифри>

Приклади

10 012 0ха або 0ХА

132 0204 0х84

Таблиця 3.5

Десяткові константи

Вісімкові

константи

Шістнадцяткові константи

12L

012L

0xaL або 0xAL

0l

0115l

0х4fl або 0x4Fl

U (або u)

L і U

long long

LL або ll.

Таблиця 3.6

Суфікс

Десяткова константа

Вісімкова або шістнадцяткова константа

немає

int

long int

long long int

int

unsigned int

long int

unsigned long int

long long int

unsigned long long int

u або U

unsigned int

unsigned long int

unsigned long long int

unsigned int

unsigned long int

unsigned long long int

l або L

long int

long long int

long int

unsigned long int

long long int

unsigned long long int

u або U

та l або L

unsigned long int

unsigned long long int

unsigned long int

unsigned long long int

ll або LL

long long int

long long int

unsigned long long int

u або U

та ll або LL

unsigned long long int

unsigned long long int

[<цифри>][.<цифри>][<E>[-]цифри]

1.57Е1

157Е-2

.007Е3

.71

-0.0025

-2.5e-3

f або F

l або L

(')

(\)

'\'' і '\\'

'\n'

Таблиця 3.7

Константа

Значення

'а'

мала буква а

'?'

знак питання

'\х1В'

символ ESC в ASCII-коді

'An', '\n\t'

wchar_t

<stddef.h>

L 'A', L '2', L '$'

"Це символьний рядок\n"

“Один\\Два” - розібратись з цими фішками!!!!!!!!

"\"Так, звичайно,\" – відповіли."

"Наступний рядок – порожній:"

""

"Рядок роз\

ділено на частини."

"Рядок розділено на частини."

Приклад

char str[] = "Рядок роз\

ділено на частини.";

char str[] = "Рядок роз\

ділено на частини.";

#include <stdio.h>

#include <locale.h>

int main(void)

{

setlocale(LC_ALL, "ukr");

char str[] = "Приклад програми, яка "

"автоматично\nздійснює об`єднання "

"рядків в довгий рядок; \n"

"така форма запису підвищує "

"наочність програми.\n";

printf("%s", str);

return 0;

}

Приклад програми, яка автоматично

здійснює об'єднання рядків в довгий рядок;

така форма запису підвищує наочність програми.

('\0')

Unicode

char16_t

u

char32_t

U

UTF-16

UTF-32

<uchar.h>

Unicode

L, u та U

UTF-8 кодування рядків ->u8

4. Ідентифікатори

Таблиця 3.8

Стандарт

Кількість значущих символів в зовнішньому ідентифікаторі

Кількість значущих символів у внутрішньому ідентифікаторі

С89

щонайменше 6

31

С99

31

63

С11

визначається реалізацією компілятора

$

5. Ключові слова

#define BOOL int

BOOL

int

6. Коментарі

/*<символи>*/

/*коментар*/

/****

коментар

****/

// це однорядковий коментар

10

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