1.4 Базовые типы данных Языка Си
1.4.1 ИдентификаторыИмена, которые присваиваются константам, типам данных, переменным и функциям называются идентификаторами. В Си следующие правила создания идентификаторов: должны начинаться с буквы (a...z,A...Z) или с подчеркивания (_), остальная часть идентификатора должна состоять из букв, подчеркиваний и/или цифр(0...9).
1.4.2 Типизированные константы
В Си используются константы, которые представляют собой имя, присваиваемое какой-либо величине. Идентификатор имени может быть любой длинны, но распознаются первые 32 символа. Идентификатор начинается с латинской буквы или символа подчеркивания, последующие символы могут быть цифры, латинские буквы и символы подчеркивания.
Компилятор Си рассматривает буквы верхнего и нижнего регистра как различные символы.
Типизированные константы бывают: целые, с плавающей запятой, символьные константы и символьные строки.
Константы представляются в виде целого десятичного, восьмиричного или шестнадцатиричного числа.
Описание констант начинается с ключевого слова const, далее тип и значение, например const int Nalog=2.
1.4.3 Переменные
Переменная - это поименованная величина, значение которой может изменяться во время выполнения программы. Переменная принадлежит к определенному типу.
1.4.3.1 Целые типы
Целые числа представляются целыми типами. Целый тип - это обобщенный тип, представление которого зависит от операционной системы и типа процессора.
Рассмотрим основные типы целых чисел:
Целый тип | Размер |
Short int | 16 битовое целое |
Int | 16 битовое целое |
Unsigned long | 32 битовое целое без знака |
Long | 32 битовое целое |
Рассмотрим простой пример.
#include <stdio.h>
#include <conio.h>
main()
{
const int Nalog= 2;
int Stavka;
int Symma;
int C;
Stavka = 300;
Symma = Stavka * Nalog;
printf("Symma naloga = %d\n",Symma);
C=getch();
}
В примере объявлены одна константа и две переменные целого типа.
1.4.3.2 Вещественные типы
Для хранения чисел с дробной частью используется вещественный тип.
В C++ существуют следующие основные типы вещественных чисел:
Вещественный тип | Размер |
Float | 32 битовое плавающее число |
Double | 64 битовое плавающее число |
Long double | 80 битовое плавающее число |
Рассмотрим следующий пример.
#include <stdio.h>
main()
{
const float Nalog= 0.7;
int Stavka;
float Symma;
Stavka = 325;
Symma = Stavka * Nalog;
printf("Symma naloga = %8.4f\n",Symma);
}
В данном примере вещественный тип представлен переменной Symma.
1.4.3.3 Символьные типы
Символьный тип -Char предназначен для хранения одного символа, поэтому его размер - один байт.
Символьный тип | Размер |
Unsigner char | 8 бит без знака |
Char | 8 бит |
Рассмотрим пример:
#include <stdio.h>
main()
{
char A;
char B;
char C;
A = 'D';
B = '!';
printf("A= %c B= %c\n",A,B);
C = '*';
printf("C= %c\n",C);
}
В данном примере переменной A присвоено значение ‘D’, переменной B значение ‘!’, а переменной С присвоено значение символа ‘*’.
1.4.4 Тип данных строка
Для представления строки символов в Си используют массивы типа char.
Рассмотрим пример.
#include <stdio.h>
#include <string.h>
main()
{
char A[256]; /* длина может быть до 256 символов */
char B[11];
char C[24];
strcpy(A,"IBM PC Pentium");
strcpy(B,"Windows 95");
strcpy(C,""); /* очистка переменной */ printf("A= %s\n",A);
printf("B= %s\n",B);
strcpy(C,B);
printf("C= %s\n",C);
}
В данном примере представлены три строки символов A, B, C.
По команде, например, strcpy (A,"IBM PC Pentium"); в строку A помещается текст IBM PC Pentium.
Кроме рассмотренного примера, для определения строк можно использовать указатель на символы. Пример:
#include <stdio.h>
#include <string.h>
main()
{
char *msg;
msg = "Привет, студент";
puts(msg);
}
Звездочка перед msg означает, что msg является указателем на символ - т.е. msg может хранить адрес символа. Однако, при этом память для размещения символов не выделяется.
Команда msg = "Привет, студент " присваивает начальный адрес этой строки - (адрес символа П) переменной msg. Команда puts(msg) печатает символы до тех пор, пока она не встретит нулевой символ, обозначающий конец строки..
... . Имеет ли право на существование эта биологизаторская интерпретация экологии? Видимо, да. Она широко представлена, и с этим следует считаться. Но она не может служить концептуальной основой комплексного непрерывного экологического образования. В структуре научного знания при таком подходе не остаётся места для географической и социальной экологии, экологии человека, а сама биология превращается ...
... хотя бы стены, чтобы нас не унижали в собственном доме, до конца не растащили наше имущество, нам нужна, обладающая высоким моральным и воинским духом достойно обеспеченная армия. Однако, значение российской армии и в том, что она представляет собой, пожалуй, единственный институт в современной виртуальной России, лишенный симулякров, поскольку ней, по крайней мере, погибают реально - в бою. ...
... важные функции управления предприятием, такие как: определение задач; планирование ресурсов; оценка деятельности и мотивация персонала на основе оценки; контроль исполнения. В целом, бюджетирование решает тактические вопросы и, по существу, для стратегического управления не предназначено. Связь бюджетирования со стратегией Практика стратегического планирования западных компаний ...
... . Для этого достаточно измерить его на карте и знать масштаб карты. Компас. Научиться пользоваться компасом нетрудно. Но компас, как правило, наилучшим помощником в ориентировании становится вместе с картой. В спортивном ориентировании пользуются специальными жидкостными компасами. Они позволяют быстро и просто взять с карты нужное направление и двигаться по местности по выбранному азимуту. ...
0 комментариев