Язык программирования C



         

Стандартный ввод и вывод - функции GETCHAR и PUTCHAR - часть 2


#include <stdio.h>

main() /* convert input to lower case */ { int c;

while ((c = getchar()) != EOF) putchar(isupper(c) ? tolower(c) : c); }

"функции" isupper и tolower на самом деле являются макросами, определеными в stdio.h. Макрос isupper проверяет, является ли его аргумент буквой из верхнего регистра, и возвращает ненулевое значение, если это так, и нуль в противном случае. Макрос tolower преобразует букву из верхнего регистра в ту же букву нижнего регистра. Независимо от того, как эти функции реализованы на конкретной машине, их внешнее поведение совершенно одинаково, так что использующие их программы избавлены от знания символьного набора.

Если требуется преобразовать несколько файлов, то можно собрать эти файлы с помощью программы, подобной утилите cat системы UNIX,

cat file1 file2 ... | lower>output

и избежать тем самым вопроса о том, как обратиться к этим файлам из программы. (Программа cat приводится позже в этой лекции).

Кроме того отметим, что в стандартной библиотеке ввода/вывода "функции" getchar и putchar на самом деле могут быть макросами. Это позволяет избежать накладных расходов на обращение к функции для обработки каждого символа. В лекции №8 мы продемонстрируем, как это делается.

on_load_lecture()

Дальше »

  Если Вы заметили ошибку - сообщите нам.  

Страницы:

1

|

2

|

3

|

4

|

5

|

6

|

вопросы | »

|

для печати и PDA

Курсы | Учебные программы | Учебники | Новости | Форум | Помощь



Телефон: +7 (495) 253-9312, 253-9313, факс: +7 (495) 253-9310, email: info@intuit.ru

© 2003-2007, INTUIT.ru::Интернет-Университет Информационных Технологий - дистанционное образование




Содержание  Назад  Вперед