- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Int main(void)
- •Глава 2. Глобальные переменные.
- •Int main(void)
Int main(void)
{
int inumber = 30;
float fnumber = 90;
char *string = "abc";
vscnf("%d %f %s",&inumber,&fnumber,string);
printf("%d %f %s",inumber,fnumber,string);
return 0;
}
vsprintf
Функция Посылает отформатированный вывод в строку.
Синтаксис #include <stdarg.h>
int vsprintf(char *string, const char *format,
va_list arglist);
ФАйл, содержащий stdio.h
прототип
Описание Функции v...printf известны как дополнительные
точки входа для функций ...printf. Они ведут себя
точно также, как и их ...printf-двойники, но они
имеют доступ к указателю на список аргументов, а
не к самому списку.
vsprintf осуществляет доступ к указателю на серии
аргументов, применяет к каждому аргументу формат-
ную спецификацию, содержащуюся в строке формата,
на которую указывает format, и осуществляет вывод
отформатированных данных в строку. Число специфи-
каций формата должно быть равно числу аргументов.
Смотри в printf описание информации, включаемой в
спецификацию формата.
Возвращаемое vsprintf возвращает число выведенных байтов. В
значение случае ошибки vsprintf возвращает EOF.
Переносимость vsprintf поддерживается на UNIX System V, и сов-
местима с ANSI C.
Смотрите также printf, va_arg, va_end, va_start.
= 283 =
Пример:
#include<stdio.h>
#include<conio.h>
char buffer[80];
int vspf(char *fmt, ...);
{
va_list argptr;
int cnt;
va_start(argptr,format);
cnt = vsprintf(buffer,fmt,argptr);
va_end(argptr);
return cnt;
}
Int main(void)
{
int inumber = 30;
float fnumber = 90;
char string[4] = "abc";
vspf("%d %f %s",inumber,fnumber,string);
printf("%s",buffer);
return 0;
}
vsscanf
Функция Выполняет форматный ввод из потока.
Синтаксис #include <stdarg.h>
int vsscanf(const char *buffer, const char *format,
va_list arglist);
Файл, содержащий stdio.h
прототип
Описание Функции v...scanf известны как дополнительные
точки входа для функций ...scanf. Они ведут себя
точно также, как и их ...scanf-двойники, но они
имеют доступ к указателю на список аргументов, а
не к самому списку.
vsscanf сканирует несколько полей ввода и читает
из потока по одному символу в каждый момент вре-
мени. Затем каждое поле форматируется в соответс-
твии с форматной спецификацией, передавемой в
vsscanf в форматной строке, на которую указывает
format. И наконец, vsscanf запоминает отформати-
= 284 =
рованный ввод по адресу, передаваемому ему в ка-
честве аргумента, следующего за format. Число
спецификаций формата и адресов должно быть равно
числу полей ввода.
Смотри в scanf описание информации, включенной в
спецификацию формата.
vsscanf может закончить сканирование конкретного
поля, не достигнув нормального символа конца_поля
(пробел), или полностью прервать его по ряду при-
чин. Смотри в scanf описание различных случаев.
Возвращаемое vsscanf возвращает число входных полей, которые
значение были сосканированы, преобразованы и запомнены.
Возвращаемое значение не включает сканированные
поля, которые не были запомнены. Если не было
сохранено ни одно поле, то возвращаемое значение
- 0.
Если vsscanf пытается читать в конце_файла, то
возвращаемое значение EOF.
Переносимость vsscanf поддерживается на UNIX System V.
Смотрите также fscanf, scanf, va_arg, va_end, va_start.
Пример:
#include<stdio.h>
#include<conio.h>
char buffer[80] = "30 90.0 abc";
int vssf(char *fmt, ...);
{
va_list argptr;
int cnt;
fflash(stdin);
va_start(argptr,format);
cnt = vsscanf(buffer,fmt,argptr);
va_end(argptr);
return cnt;
}
