» » » C. Бочков - Язык программирования Си для персонального компьютера


Авторские права

C. Бочков - Язык программирования Си для персонального компьютера

Здесь можно скачать бесплатно "C. Бочков - Язык программирования Си для персонального компьютера" в формате fb2, epub, txt, doc, pdf. Жанр: Программирование, издательство СП "Диалог", Радио и связь, год 1990. Так же Вы можете читать книгу онлайн без регистрации и SMS на сайте LibFox.Ru (ЛибФокс) или прочесть описание и ознакомиться с отзывами.
C. Бочков - Язык программирования Си для персонального компьютера
Рейтинг:
Название:
Язык программирования Си для персонального компьютера
Автор:
Издательство:
СП "Диалог", Радио и связь
Год:
1990
ISBN:
5-256-00974-5
Скачать:

99Пожалуйста дождитесь своей очереди, идёт подготовка вашей ссылки для скачивания...

Скачивание начинается... Если скачивание не началось автоматически, пожалуйста нажмите на эту ссылку.

Вы автор?
Жалоба
Все книги на сайте размещаются его пользователями. Приносим свои глубочайшие извинения, если Ваша книга была опубликована без Вашего на то согласия.
Напишите нам, и мы в срочном порядке примем меры.

Как получить книгу?
Оплатили, но не знаете что делать дальше? Инструкция.

Описание книги "Язык программирования Си для персонального компьютера"

Описание и краткое содержание "Язык программирования Си для персонального компьютера" читать бесплатно онлайн.



Книга содержит полное описание наиболее распространенных реализаций языка программирования Си на 16-разрядных микроЭВМ, совместимых с IBM PC. Приведено описание стандартных библиотек языка.

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






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

Примеры:

/* пример 1 */

switch (с) {

case 'А': capa++;

case 'a': lettera++;

default: total++;

}

/* пример 2 */

switch (i) {

case -1: n++;

break;

case 0: z++;

break;

case 1: p++;

break;

}

/* пример 3 */

switch (i) {

case 1: if(a > 0) {

case 2: b = 3;

} else

case 3: k = 0;

}

В первом примере все три оператора в теле оператора switch выполняются, если значение с равно 'А'. Передача управления осуществляется на первый оператор (capa++;), далее операторы выполняются в порядке их следования в теле.

Если с равно 'а', те инкрементируются переменные lettera и total. Наконец, если с не равно 'А' или 'а', то инкрементируется только переменная total.

Во втором примере в теле оператора switch после каждого оператора следует оператор разрыва break, который осуществляет принудительный выход из тела оператора-переключателя switch. Если i равно -1, переменная n инкрементируется. Оператор break, следующий за оператором n++, вызывает передачу управления за пределы тела переключателя, минуя остающиеся операторы. Аналогично, если i равно нулю, инкрементируется только переменная z; если i равно 1, инкрементируется только переменная р. Передний оператор break не является обязательным, поскольку без него управление все равно перешло бы на конец составного оператора, но он включен для единообразия.

В третьем примере при i, равном 1, будет выполнена следующая последовательность действий:

if(а > 0)

b = 3;

else

k = 0;

При i, равном 2, переменной b будет присвоено значение 3. При i, равном 3, переменная k будет обнулена.

Оператор в теле переключателя может быть помечен множественными метками case, как показано в следующем примере:

switch (с) {

case 'а':

case 'b':

case 'с':

case 'd':

case 'e':

case 'i': hexcvt(c);

}

В этом примере, если выражение переключения примет любое из значений 'а', 'b', 'с', 'd', 'e', 'i', будет вызвана функция hexcvt.

Оператор разрыва break

Синтаксис:

break;

Действие:

Оператор разрыва break прерывает выполнение операторов do, for, while или switch. Он может содержаться только в теле этих операторов. Управление передается оператору программы, следующему за прерванным. Появление оператора break вне операторов do, for, while, switch компилятор рассматривает как ошибку.

Если оператор разрыва break записан внутри вложенных операторов do, for, while, switch, то он завершает только непосредственно охватывающий его оператор do, for, while, switch. Если же требуется завершение более чем одного уровня вложенности, следует использовать операторы возврата return и перехода goto.

Пример:

for(i = 0; i < LENGTH; i++) {

for(j = 0; j < WIDTH; j++)

if(lines[i][j] == '\0') break;

lengths[i] = j;

}

В вышеприведенном примере построчно обрабатывается массив строк переменной длины lines. Именованная константа LENGTH задает количество строк в массиве LINES. Именованная константа WIDTH задает максимально допустимую длину строки. Задача состоит в заполнении массива lengths длинами всех строк массива lines. Оператор разрыва break прерывает выполнение внутреннего цикла for при обнаружении признака конца символьной строки ( \0'). После этого i-му элементу одномерного массива length [i] присваивается длина i-й строки в байтах. Управление передается внешнему оператору цикла for. Переменная i инкрементируется и процесс повторяется до тех пор, пока значение i не станет больше или равно значению константы LENGTH.

Оператор перехода goto

Синтаксис:

goto <метка>;

.

.

.

<метка>: <оператор>

Действие:

Оператор перехода goto передает управление непосредственно на <оператор>, помеченный <меткой>. Метка представляет собой обычный идентификатор, синтаксис которого описан в разделе 1.3. Область действия метки ограничивается функцией, в которой она определена; из этого следует, во-первых, что каждая метка должна быть отлична от других меток в той же самой функции; во-вторых, что нельзя передать управление по оператору goto в другую функцию.

Помеченный оператор выполняется сразу после выполнения оператора goto. Если оператор с данной меткой отсутствует или существует более одного оператора, помеченного той же меткой, то компилятор сообщает об ошибке. Метка оператора имеет смысл только для оператора goto. При последовательном выполнении операторов помеченный оператор выполняется так же, как если бы он не имел метки.

Можно войти в блок, тело цикла, условный оператор, оператор-переключатель по метке.

Нельзя с помощью оператора goto передать управление на конструкции case и default в теле переключателя.

Пример:

if(errorcode > 0) goto exit;

exit: return (errorcode);

В примере оператор перехода goto передает управление на оператор, помеченный меткой exit, если errorcode больше нуля.

Оператор возврата return

Синтаксис:

return [<выражение>];

Действие:

Оператор возврата return заканчивает выполнение функции, в которой он содержится, и возвращает управление в вызывающую функцию. Управление передается в точку вызывающей функции, непосредственно следующую за оператором вызова. Значение <выражения>, если оно задано, вычисляется, приводится к типу, объявленному для функции, содержащей оператор возврата return, и возвращается в вызывающую функцию. Если <выражение> опущено, то возвращаемое функцией значение не определено.

Пример:

main()

{

void draw(int, int);

long sq(int);

у = sq(x);

draw(x, y);

}

long sq(int x)

{

return (x*x);

}

void draw(int x, int y)

{

return,

}

Функция main вызывает две функции, sq и draw. Функция sq возвращает значение квадрата x. Это значение присваивается переменной у. Функция draw объявлена с типом void, как не возвращающая значения. Попытка присвоить значение. возвращаемое функцией draw, привело бы к сообщению компилятора об ошибке.

<Выражение> в операторе возврата return принято заключать в скобки, как показано в примере. Это, однако, не является требованием языка.

Если оператор return отсутствует в теле функции, то управление автоматически передается в вызывающую функцию после выполнения последнего оператора в вызванной функции, т. е. по достижении последней закрывающей фигурной скобки. Возвращаемое значение вызванной функции в этом случае не определено. Если возвращаемое значение не требуется, то функцию следует явно объявлять с типом void.

Распространенной ошибкой является наличие в функции, которая должна возвращать значение, операторов возврата, как с выражением, так и без него.

ФУНКЦИИ

Введение

Функция — это совокупность объявлений и операторов, предназначенная для выполнения некоторой отдельной задачи. Количество функций в программе не ограничивается. Любая программа на языке Си содержит, по крайней мере, одну функцию, так называемую главную функцию, с именем main. В данном разделе описывается, как определять, объявлять и вызывать функции в языке Си.

Определение функции специфицирует имя функции, атрибуты ее формальных параметров, и тело функции, содержащее Объявления и операторы. В определении функции также может задаваться класс памяти функции и тип возвращаемого значения.

Объявление функции задает имя и тип возвращаемого значения функции, явное определение которой приведено в другом месте программы. В объявлении функции могут быть также специфицированы класс памяти, число аргументов функции и их типы. Прототип функции (версия 5.0 СП MSC и СП ГГС) позволяет, помимо того, задавать в объявлении идентификаторы и класс памяти аргументов. Это позволяет компилятору сравнивать при вызове типы фактических аргументов и формальных параметров функции.


На Facebook В Твиттере В Instagram В Одноклассниках Мы Вконтакте
Подписывайтесь на наши страницы в социальных сетях.
Будьте в курсе последних книжных новинок, комментируйте, обсуждайте. Мы ждём Вас!

Похожие книги на "Язык программирования Си для персонального компьютера"

Книги похожие на "Язык программирования Си для персонального компьютера" читать онлайн или скачать бесплатно полные версии.


Понравилась книга? Оставьте Ваш комментарий, поделитесь впечатлениями или расскажите друзьям

Все книги автора C. Бочков

C. Бочков - все книги автора в одном месте на сайте онлайн библиотеки LibFox.

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Отзывы о "C. Бочков - Язык программирования Си для персонального компьютера"

Отзывы читателей о книге "Язык программирования Си для персонального компьютера", комментарии и мнения людей о произведении.

А что Вы думаете о книге? Оставьте Ваш отзыв.