Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Константы вещественного типа

Поиск

Данные константы размещаются в памяти в формате double, а во внешнем представлении могут иметь две формы:

1) с фиксированной десятичной точкой, формат записи: ± n. m, где n, m – целая и дробная части числа;

2) с плавающей десятичной точкой (экспоненциальная форма) представляется в виде мантиссы и порядка. Мантисса записывается слева от знака экспоненты (Е или е), а порядок – справа. Значение константы определяется как произведения мантиссы и числа 10, возведенного в указанную в порядке степень.

Общий формат таких констант: ± n. mE ± p, где n, m – целая и дробная части числа, р – порядок; ±0. xxxE ± p – нормализованный вид, например, 1,25×10–8 = 0.125 E –7.

Примеры констант с фиксированной и плавающей точками:

1.0 –3.125 100 е –10 0.12537 е +12.

Пробелы внутри чисел не допускаются, а для отделения целой части числа от дробной используется точка. Можно опустить нулевую дробную или целую части числа, но не обе сразу, например, 1.0 «1. или 0.5 «.5.

В любом случае при использовании вещественных констант наличие так называемой десятичной точки обязательно.

 

Символьные константы

Символьная константа – это символ, заключенный в одинарные кавычки: ' A ', ' х ' (тип char занимает в памяти один байт).

Также используются специальные последовательности символов – управляющие (escape) последовательности:

\ n – новая строка;
\ t – горизонтальная табуляция;
\ b – шаг назад;
\ r – возврат каретки;
\ v – вертикальная табуляция;
\ f – перевод формата (переход на новую строку);
\\ – обратный слеш;
\' – апостроф;
\" – кавычки;
\0 – символ «пусто», не путать с символом ‘0’.

Символьная константа '\0' – это нулевой байт, каждый бит которого равен нулю.

При присваивании символьным переменным значений констант значения констант заключаются в апострофы, например:

char ss = ‘У’;

Текстовые символы непосредственно вводятся с клавиатуры, а специальные и управляющие – представляются в исходном тексте парами символов, например: \\, \', \".

Примеры символьных констант: ' А ', '9', '$', '\ n '.

 

Строковые константы

Строковая константа представляет собой последователь­ность символов кода ASCII, заключенную в кавычки (”). Во внутреннем представлении к строковым константам добавляется пустой символ '\0', который не является цифрой 0, на печать не выводится (в таблице кодов ASCII имеет код = 0) и является признаком окончания строки.

Кавычки не являются частью строки, а служат только для ее ограничения. Строка в языке Си представляет собой массив, состоящий из символов. Внутреннее представление константы "1234 ABC ": '1' '2' '3' '4' ' A ' ' B ' ' C ' '\0'.

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

"Система", "\ n \ t Аргумент \ n ", "Состояние \" WAIT \" ".

Строковые константы еще называют строковыми литералами.

В конец строковой константы компилятор автоматически помещает нуль-символ.

Длинную строковую константу можно разбить на несколько, используя символ переноса – обратный слеш (\). Например:

Вы поступили и \

учитесь на факультете информационных технологий \

Белорусского государственного университета \

информатики и радиоэлектроники

Компилятор Си воспримет такую запись как единое целое, игнорируя символы обратного слеша.

ГЛАВА 4. Обзор операций

 

Операции, выражения

Выражения используются для вычисления значений (определенного типа) и состоят из операндов, операций и скобок. Каждый операнд может быть, в свою очередь, выражением или одним из его частных случаев – константой или переменной. Операнды задают данные для вычислений.

Знак операции – это один или более символов, определяющих действие над операндами, т.е. операции задают действия, которые необходимо выполнить. Внутри знака операции пробелы не допускаются.

Операции делятся на унарные, бинарные и тернарные – по количеству участвующих в них операндов, и выполняются в соответствии с приоритетами. Для изменения порядка выполнения операций используются круглые скобки.

Большинство операций выполняются слева направо, например, a + b + c ® ® (a + b)+ c. Исключение составляют унарные операции, операции присваивания и условная операция (?:), которые выполняются справа налево.

В языке Си используются четыре унарные операции, имеющие самый высокий приоритет, их часто называют первичными:

– операция доступа к полям структур и объединений при помощи идентификаторов «.» – точка;

– операция доступа к полям структур и объединений при помощи указателей «–>» – стрелка;

– операция [ ] индексации, используемая при декларации массива и обращении к его элементам;

– операция () обращения к функции.

Первичные операции будут рассмотрены в соответствующих разделах.

Полный список операций с указанием их приоритетов приводится в прил. 2.

 

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

Обозначения арифметических операций:

+ (сложение); – (вычитание); / (деление, для int операндов – с отбрасыванием остатка); * (умножение); % (остаток от деления целочисленных операндов со знаком первого операнда – деление «по модулю»).

Операндами традиционных арифметических операций (+ – * /) могут быть константы, переменные, обращения к возвращающим значения функциям, элементы массивов, любые арифметические выражения, указатели (с ограничениями).

Порядок выполнения действий в арифметических выражениях следующий: выражения в круглых скобках; операции *, /, %; операции +, –.

Унарные операции «знак числа» (+, –) обладают самым высоким приоритетом и определены для операндов числовых типов (имеющих числовой результат), при этом «+» носит только информационный характер, «–» меняет знак операнда на противоположный (неадресная операция).

Операции *, /, % обладают высшим приоритетом над операциями +, –, поэтому при записи сложных выражений нужно использовать общепринятые математические правила: «x + y * za /(b + с), т.е. использовать круглые скобки.

 

Операция присваивания

Формат операции присваивания:

Операнд _1 = Операнд _2;

Операндом _1 (левый операнд) может быть только переменная. Левый операнд операции присваивания получил название L–значение, (Lvalue, Leftvalue) – адресное выражение. Так в Си называют любое выражение, адресующее некоторый участок оперативной памяти, в который можно записать некоторое значение. Переменная – это частный случай адресного выражения.

Операндом _2 (правый операнд) могут быть: константа, переменная или любое выражение, составленное в соответствии с синтаксисом языка Си. Правый операнд операции присваивания назвали R–значение, (R–value, Right–value).

Присваивание значения в языке Cи, в отличие от традиционной интерпретации, рассматривается как выражение, имеющее значение левого операнда после присваивания. Таким образом, присваивание может включать несколько операций присваивания, изменяя значения нескольких операндов, например:

int i, j, k;

float x, y, z;

...

i = j = k = 0; «k = 0, j = k, i = j;

x = i + (y = 3) – (z = 0); «z = 0, y = 3, x = i + yz;

Примеры недопустимых выражений:

– присваивание константе: 2 = x + y;

– присваивание функции: getch () = i;

– присваивание результату операции: (i + 1) = 2 + y;



Поделиться:


Последнее изменение этой страницы: 2016-04-19; просмотров: 830; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.133.145.168 (0.007 с.)