69 lines
11 KiB
Markdown
69 lines
11 KiB
Markdown
# Переменные
|
||
|
||
**Переменные** имеют тип, имя и значение.
|
||
Перед использованием необходимо объявить.
|
||
```C
|
||
int var;
|
||
```
|
||
|
||
Нельзя использовать данные имена, так как они являются зарезервированныыми. **`break, case, char, const, continue, default, do, double, else, enum, extern, float, for, goto, if, int, long, register, return, short, signed, sizeof, static, struct, switch, typedef, union, unsigned, void, volatile, while`.**
|
||
|
||
Что бы присвоить значение, нужно написать:
|
||
```C
|
||
var = 1;
|
||
```
|
||
Как пример кода
|
||
```C
|
||
#include <stdio.h>
|
||
|
||
int main(void)
|
||
{
|
||
int number;
|
||
number = 2;
|
||
printf("%d", number);
|
||
return 0
|
||
}
|
||
```
|
||
|
||
Но и при определении тоже можно указать значение:
|
||
```C
|
||
int var = 1;
|
||
```
|
||
Или сразу можно инициировать сразу несколько:
|
||
```C
|
||
int var1 =1, var2 = 2, var3 = 3;
|
||
```
|
||
|
||
|
||
# Типы данных
|
||
|
||
|
||
| Тип данных | Описанеие | Суффикс |
|
||
| ------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------- |
|
||
| **char** | Один символ, 1 байт | |
|
||
| **unsigned char** | Один символ, 1 байтб любое значение от 0 до 255 | |
|
||
| **signed char** | Один символ, 1 байт, от -128 до 127 | |
|
||
| **short (short int, signed short и signed short int)** | 2 байта в памяти, число в диапазоне –32768 до 32767. | |
|
||
| **unsigned short** | 2 байта в памяти, целое число в диапазоне от 0 до 65535 | |
|
||
| **Int** | представляет целое число. В зависимости от архитектуры процессора может занимать 2 байта (16 бит) или 4 байта (32 бита). Если брать основные платформы - 64-разрядные Windows, Linux (вместе с Android) и MacOS, то размер int составляет 4 байта. Диапазон предельных значений соответственно также может варьироваться от –32768 до 32767 (при 2 байтах) или от −2 147 483 648 до 2 147 483 647 (при 4 байтах) и выше. | |
|
||
| **unsigned int** | представляет положительное целое число. В зависимости от архитектуры процессора может занимать 2 байта (16 бит) или 4 байта (32 бита), и из-за этого диапазон предельных значений может меняться: от 0 до 65535 (для 2 байт), либо от 0 до 4 294 967 295 (для 4 байт). | u U |
|
||
| **long** | представляет целое число и занимает в памяти 4 байта (32 бита) или 8 байт (64 бита). В зависимости от размера может находиться в в диапазоне от -2 147 483 648 до 2 147 483 647 (4 байта), либо в диапазоне от -9223372036854775807 до +9 223 372 036 854 775 807 (8 байт).<br><br>Если брать распростренные платформы, то на 64-разрядном Windows long занимает 4 байта, а на 64-разрядных Linux/MacOS - 8 байт. | |
|
||
| **unsigned long** | представляет целое число и занимает в памяти 4 байта (32 бита) или 8 байт (64 бита). В зависимости от размера может находиться в в диапазоне от 0 до 4 294 967 295 (4 байта) или в диапазоне от 0 до 18 446 744 073 709 551 615 (8 байт). | ul UL |
|
||
| **long long** | представляет целое число в диапазоне от -9223372036854775807 до +9 223 372 036 854 775 807. Занимает в памяти, как правило, 8 байт (64 бита). | ll LL |
|
||
| **unsigned long long** | представляет целое число в диапазоне от 0 до 18 446 744 073 709 551 615. Занимает в памяти, как правило, 8 байт (64 бита). | ull ULL |
|
||
| **float** | представляет вещественное число одинарной точности с плавающей точкой в диапазоне +/- 3.4E-38 до 3.4E+38. В памяти занимает 4 байта (32 бита) | |
|
||
| **double** | представляет вещественное число двойной точности с плавающей точкой в диапазоне +/- 1.7E-308 до 1.7E+308. В памяти занимает 8 байт (64 бита) | |
|
||
| **long double** | представляет вещественное число двойной точности с плавающей точкой в диапазоне +/- 3.4E-4932 до 1.1E+4932. В памяти занимает 10 байт (80 бит). На некоторых системах может занимать 96 и 128 бит. | |
|
||
| **void** | без обозначения | |
|
||
# Вывод в консоль
|
||
|
||
|
||
| Тип данных | Спецификация |
|
||
| ------------------------------------- | ------------ |
|
||
| char | %c |
|
||
| string | %s |
|
||
| int (cо знаком) | %d |
|
||
| int (со знаком) | %i |
|
||
| целые положительные числа<br>unsigned | %u |
|
||
| | |
|