Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Справочник по функциям С++.doc
Скачиваний:
168
Добавлен:
02.05.2014
Размер:
3.57 Mб
Скачать

Vsprintf

-----------------------------------------------------------------

НазначениеПосылает форматированный вывод в строку.

Синтаксис #include <stdio.h>

int vsprintf(char *buffer, char *format,

va_list arglist);

Прототип в stdio.h

ЗамечанияФункции v...printf известны как дополнительные

точки входа для функций ...printf. Они работают

точно так же, как их ...printf-двойники, однако

они принимают указатель на список аргументов, а

не сам список аргументов.

vsprintf принимает указатель на ряд аргументов,

применяет к каждому аргументу спецификацию фор-

мата, содержащуюся в строке форматов, на кото-

рую указывает format, и выводит форматированные

данные в строку. Число спецификаций формата

должно быть равно числу аргументов.

Смотри описание printf для получение информации

о спецификациях формата.

Возвращаемоеvsprintf возвращает число выводимых байтов. В

значениеслучае ошибки vprintf возвращает EOF.

Переносимостьvsprintf доступна в UNIX System V и совместима

со стандартом ANSI.

См. также printf, va_...

Пример См. printf

-----------------------------------------------------------------

Vsscanf

-----------------------------------------------------------------

НазначениеОсуществляет форматированный ввод из потока.

Синтаксис #include <stdio.h>

int vsscanf(const char *buffer,

const char *format, va_list arglist);

Прототип вstdio.h

ЗамечанияФункции v...scanf известны как дополнительные

точки входа для функций ...scanf. Они работают

точно так же, как их ...scanf-двойники, однако

они принимают указатель на список аргументов, а

не сам список аргументов.

vsscanf сканирует ряд входных полей (один сим-

вол за раз), читаемых из потока. Затем каждое

поле форматируется в соответствии со специфика-

цией формата, содержащейся в строке форматов,

на которую указывает format. После этого

vsscanf сохраняет форматированный ввод по адре-

су, переданному ей аргументом, следующим за

format. Число спецификаций формата и адресов

должно быть равно числу входных полей.

Смотри описание scanf для получение информации

о спецификациях формата.

vsscanf может остановить сканирование до того,

как она обнаружит символ конца файла, или сов-

сем завершить работу по целому ряду причин. Для

получение информации об этом смотри описание

scanf.

Возвращаемоеvsscanf возвращает число успешно обработанных

значениевходных полей (в него не входят поля, которые

были проверены, но не были сохранены). Если ни

одного поля не было сохранено, возвращается 0.

Если vsscanf пытается читать символ конца фай-

ла, возвращается EOF.

Переносимостьvsscanf доступна в UNIX System V.

См. также fscanf, scanf, va_...

-----------------------------------------------------------------

wherex

-----------------------------------------------------------------

НазначениеВозвращает горизонтальную позицию курсора внут-

ри окна.

Синтаксисint wherex(void);

Прототип вconio.h

Замечанияwherex возвращает координату x текущей позиции

курсора (внутри текущего текстового окна).

Возвращаемоеwherex возвращает целое в диапозоне от 1 до 80.

значение

Переносимостьwherex работает только на ЭВМ семейства IBM PC

и совместимых с ними. Соответствующая функция

есть в Турбо Паскале.

См. также gettextinfo, gotoxy, wherey

Пример printf("Позиция курсора (%d, %d)\n",

wherex(), wherey());

-----------------------------------------------------------------

wherey

-----------------------------------------------------------------

НазначениеВозвращает вертикальную позицию курсора внутри

окна.

Использование int wherey(void);

Прототип вconio.h

Замечанияwherey возвращает координату y текущей позиции

курсора (внутри текущего текстового окна).

Возвращаемоеwherey возвращает целое в диапозоне от 1 до 25.

значение

См. также gettextinfo, gotoxy, wherex

Пример См. wherex

-----------------------------------------------------------------

window

-----------------------------------------------------------------

НазначениеОписывает активное в текстовом режиме окно.

Синтаксис void window(int left, int top, int right,

int bottom);

Прототип в conio.h

Замечанияwindow описывает на экране текстовое окно. За-

дание некорректных координат в любом измерении

приводит к игнорированию обращения к функции

window.

left и top задают координаты экрана для верхне-

го левого угла окна.

bottom и right определяют координаты экрана

нижнего правого угла окна.

Минимальный размер окна равен 1 колонке и 1

строке. По умолчанию окно занимает весь экран

со следующими координатами:

80 - колоночный режим: 1, 1, 80, 25

40 - колоночный режим: 1, 1, 40, 25

ВозвращаемоеНет.

значение

ПереносимостьДанная функция работает только на ЭВМ семейства

IBM PC и совместимых с ними. Соответствующая

функция есть в Турбо Паскале.

См. также clreol,clrscr,delline,gettextinfo,gotoxy,

insline,puttext,textmode

-----------------------------------------------------------------

_write

-----------------------------------------------------------------

НазначениеЗаписывает в файл.

Синтаксис int _write(int handle, void *buf,unsigned len);

Прототип вio.h

ЗамечанияЭта функция осуществляет попытку записать len

байтов из буфера, на который указывает указа-

тель buf, в файл, связанный с handle.

Максимальное количество байтов, которое может

записать write, - 65534. 65535 (0xFFFF) вызыва-

ет ошибочный код возврата -1.

_write не преобразует символ перевода строки

(LF) в пару CR/LF (CR - символ возврата карет-

ки), т.к. она работает только с двоичными фай-

лами.

Если количество байтов, действительно записан-

ных в файл, меньше, чем требуемое, то результат

будет считаться ошибочным. Данная ситуация,

скорее всего, указывает на переполнение диска.

Для дисков или дисковых файлов запись всегда

начинается с текущего указателя файла. Для уст-

ройства байты посылаются прямо на устройство.

Для файлов, открытых с использованием опции

O_APPEND, указатель файла перед записью данных

устанавливается на EOF.

Возвращаемоеwrite возвращает число записанных байтов. В

значениеслучае ошибки write возвращает -1 и устанавли-

вает глобальную переменную errno в одно из сле-

дующих значений:

EACCES - ошибка доступа

EBADF - неверный номер файла

Переносимость_write уникальна для DOS.

См. также lseek,read,write

-----------------------------------------------------------------

write

-----------------------------------------------------------------

НазначениеЗаписывает в файл.

Синтаксис int write(int handle, void *buf, unsigned len);

Прототип вio.h

Замечанияwrite записывает буфер данных в файл или уст-

ройство, идентифицированное передаваемым пара-

метром handle. handle является обработчиком

файла, который может быть получен в результате

вызова функций creat, open, dup или dup2.

Эта функция осуществляет попытку записать len

байтов из буфера, на который указывает указа-

тель buf, в файл, связанный с handle. За исклю-

чением тех случаев, когда write используется

для записи в текстовый файл, количество байтов,

записанных в файл, будет не больше, чем требуе-

мое.

Максимальное количество байтов, которое может

записать write, - 65534. 65535 (0xFFFF) вызыва-

ет ошибочный код возврата -1.

В текстовых файлах, когда функция write встре-

чает символ перевода строки (LF), она выводит

пару CR/LF (CR - символ возврата каретки).

Если количество байтов, действительно записан-

ных в файл, меньше, чем требуемое, то результат

будет считаться ошибочным. Данная ситуация,

скорее всего, указывает на переполнение диска.

Для дисков или дисковых файлов запись всегда

начинается с текущего указателя файла. Для уст-

ройства байты посылаются прямо на устройство.

Для файлов, открытых с использованием опции

O_APPEND, указатель файла перед записью данных

устанавливается на EOF.

Возвращаемоеwrite возвращает число записанных байтов.

значениеwrite, применяющаяся к текстовому файлу, не

считает число символов возврата каретки. В слу-

чае ошибки write возвращает -1 и устанавливает

глобальную переменную errno в одно из следующих

значений:

EACCES - ошибка доступа

EBADF - неверный номер файла

Переносимостьwrite доступна в UNIX-системах.

См. также creat,lseek,open,read,_write