adfun.ru
| |
BIGLIB |
| большущая библиотека (9812 книг), можно не только прочитать но и скачать бесплатно |
|
| |
ФАНТАСТИКА |
| фентези,
фантастика, фантастические повести |
|
| |
ФИЛОСОФИЯ |
книги, которые заставляют
задуматься над окружающим тебя миром.
|
|
| |
МЕДИЦИНА |
медицинские книги,
методички,
народные лечебники |
|
| |
КУЛИНАРИЯ |
рецепты
тортов, консервирование,
все о спиртных
напитках. |
|
| |
СТИХИ |
| стихи популярных
и не очень авторов |
|
| |
ТВОРЧЕСТВО |
| народное творчество,
стихи, песни и т.д. |
|
| |
ЮМОР |
| анекдоты, приколы,
смешные истории |
|
| |
ЭРОТИКА |
| эротические рассказы,
книги о технике секса,
кама-сутра и др. |
|
|
| |
 |
имеют наивысший приоритет (слева-направо). Унарные операции:
* & - ! ~ ++ --
имеют приоритет более низкий, чем основные операции, но более вы-
сокий, чем бинарные операции (при группировании справа-налево).
Приоритет бинарных операций убывает в соответствии со следующим
списком (операции с равным приоритетом содержатся на одной стро-
ке):
TDeb 3.0 #2-3 = 21 =
высший * / %
+ -
>> <<
< > <= >=
== !=
&
^
і
&&
низший іі
Единственная тернарная операция ? имеет более низкий приори-
тет, чем любая из двоичных операций.
Операторы присваивания имеют более низкий, чем тернарная
операция и одинаковый приоритет и группируются справа-налево:
= += -= /= %= >>= <<= &= ^= і=
Выполнение в программе функций на Си
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Функции в выражениях Си можно вызывать точно также, как это
делается в исходном коде. Турбо отладчик выполняет код вашей
программы с теми аргументами функции, которые вы задаете. Это мо-
жет оказаться очень полезным для быстрой проверки поведения напи-
санной функции. Ее можно повторно вызывать с различными аргумен-
тами и проверять, возвращает ли она корректное значение.
Если ваша программа содержит следующую функцию, которая воз-
водит число в степень (x в степени y):
long power(int x, int y) {
long temp = 1;
while (y--)
temp *= x;
return(temp);
}
TDeb 3.0 #2-3 = 22 =
то в следующей таблице показаны результаты вызова данной функции
с различными аргументами:
ЪДДДДДДДДДДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДДДДДДДДДДДДДДДї
і Выражение Си і Результат і
ГДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДДДДДДДДДДДДДДДґ
і power(3,2)*2 і 18 і
і 25 + power(5,8) і 390650 і
і power(2) і Ошибка (пропу- і
і і щен аргумент) і
АДДДДДДДДДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДДДДДДДДДДДДДДДЩ
Выражения языка Си с побочными эффектами
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Побочные эффекты имеют место, когда вы вычисляете выражение
языка Си, которое в процессе вычисления изменяет значение элемен-
та данных. В некоторых случаях побочные эффекты являются жела-
тельными и используются преднамеренно для модификации значения
переменной программы. В других случаях желательно соблюдать осто-
рожность и избегать их, поэтому важно понимать, когда может воз-
никнуть побочный эффект.
Операция присваивания (=, += и т.д.) изменяет значение эле-
мента данных, расположенного слева от операции. Операции увеличе-
ния и уменьшения (++ и --) изменяют значения элементов данных,
которые им предшествуют или следуют за ними, в зависимости от то-
го, используются они как префиксные, или как постфиксные опера-
ции.
Менее очевидный тип побочных эффектов может иметь место,
когда вы выполняете функцию, являющуюся частью программы. Напри-
мер, если вы вычисляет выражение Си:
myfunc(1, 2, 3) + 7
то, если функция myfunc изменила значение одной из переменных
программы, ваша программа может в дальнейшем вести себя неверно.
Ключевые слова языка Си и преобразование типов
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Турбо отладчик позволяет вам выполнять приведение указателей
также, как это делалось бы в программе на языке Си. Приведение
типа состоит из объявления типа данных языка Си в круглых скоб-
ках. Оно должно следовать перед выражением, при вычислении кото-
рого получается указатель на память.
Преобразование типа полезно использовать, если вы хотите
проверить содержимое ячейки памяти, на которую ссылается дальний
адрес, сгенерированный с использованием операции ::. Например:
TDeb 3.0 #2-3 = 23 =
(long far *)Ox3456::0
(char far *)_ES::_BX
Преобразование типа можно использовать для доступа к пере-
менной программы, для которой информация о типе отсутствует (что
может произойти при компиляции модуля без включения информации
для отладки). Вместо того, чтобы выполнять перекомпиляцию и пере-
компоновку, можно просто перед именем переменной указать приведе-
ние типа (то есть присвоить тип явным образом).
Например, если ваша переменная iptr представляет собой ука-
затель на целое, вы можете проверить целое значение, на которое
она указывает, вычислив выражение Си:
*(int *)iptr
При формировании преобразования типов в Турбо отладчике мож-
но использовать следующие ключевые слова:
char float far
int double huge
short unsigned struct
long near union
enum
Выражения языка Паскаль
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Турбо отладчик, за исключением конкатенации строк и операций
над множествами, поддерживает синтаксис выражений Паскаля. Выра-
жение представляет собой смесь операций, строк, переменных и
констант. В следующих разделах описывается каждый из образующих
выражение компонентов.
Идентификаторы Паскаля
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Идентификаторы в Паскале представляют собой определенные
пользователем имена элементов данных или подпрограмм вашей прог-
раммы. Имя идентификатора Паскаля может начинаться с буквы (a -
z, A - Z) или символа подчеркивания. Последующие символы в имени
могут содержать цифры (от 0 до 9) и подчеркивания, а также буквы.
Обычно идентификаторы подчиняются правилам области действия
Паскаля, при этом "вложенные" локальные идентификаторы переопре-
деляют другие идентификаторы в том же имени. Вы можете переопре-
делить данную область действия, если хотите получить доступ к
идентификаторам в других областях. Более подробно это описывается
в разделе "Доступ к идентификаторам вне текущей области дейс-
твия".
Константы Паскаля и формат чисел
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Константы могут быть либо вещественными (с плавающей точ-
TDeb 3.0 #2-3 = 24 =
кой), либо целыми. Отрицательные константы начинаются со знака
минуса (-). Если число содержит десятичную точку или символ e,
что обозначает экспоненту, то это вещественное число. Например:
123.4 456e34 123.45e-5
Константы целого типа являются десятичными, если они не на-
чинаются со знака доллара ($), что означает шестнадцатиричную
константу. Десятичные целые константы могут принимать значения в
диапазоне от 2137483648 и 2147483647. Шестнадцатиричные константы
должны лежать в диапазоне от $00000000 до $FFFFFFFF.
Строки Паскаля
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Строка представляет собой просто группу символов, заключен-
ных в одиночные кавычки, например:
'abc'
Указав перед десятичным управляющим символом символ #, можно
включить в строку управляющие символы, например:
'def'#7'xyz'
TDeb 3.0 #2-3 = 25 =
Операции Паскаля
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
|
adfun.ru
|
|
|
|