函数名:
vfprintf 功 能: 送格式化输出到一流中 用 法: int vfprintf(FILE *stream, char
*format, va_list param); 程序例: #include <stdio.h> #include <stdlib.h>
#include <stdarg.h> FILE *fp; int vfpf(char *fmt, ...) {
va_list argptr; int cnt; va_start(argptr, fmt);
cnt = vfprintf(fp, fmt, argptr); va_end(argptr);
return(cnt); } int main(void) { int
inumber = 30; float fnumber = 90.0; char string[4]
= "abc"; fp = tmpfile(); if (fp == NULL)
{ perror("tmpfile() call");
exit(1); } vfpf("%d %f %s", inumber, fnumber,
string); rewind(fp); fscanf(fp,"%d %f %s", &inumber,
&fnumber, string); printf("%d %f %s\n", inumber, fnumber,
string); fclose(fp); return 0; }
函数名: vfscanf 功 能: 从流中执行格式化输入 用 法:
int vfscanf(FILE *stream, char *format, va_list param); 程序例: #include <stdio.h>
#include <stdlib.h> #include <stdarg.h> FILE *fp; int vfsf(char
*fmt, ...) { va_list argptr; int cnt;
va_start(argptr, fmt); cnt = vfscanf(fp, fmt,
argptr); va_end(argptr); return(cnt); } int
main(void) { int inumber = 30; float fnumber
= 90.0; char string[4] =
"abc"; fp = tmpfile(); if (fp == NULL)
{ perror("tmpfile() call");
exit(1); } fprintf(fp,"%d %f %s\n",inumber,fnumber,string);
rewind(fp); vfsf("%d %f %s",&inumber,&fnumber,string);
printf("%d %f %s\n",inumber,fnumber,string);
fclose(fp); return 0; } 函数名: vprintf
功 能: 送格式化输出到stdout中 用 法: int vprintf(char *format, va_list
param); 程序例: #include <stdio.h> #include <stdarg.h> int vpf(char
*fmt, ...) { va_list argptr; int cnt;
va_start(argptr, format); cnt = vprintf(fmt, argptr);
va_end(argptr); return(cnt); } int main(void) {
int inumber = 30; float fnumber = 90.0; char
*string = "abc"; vpf("%d %f %s\n",inumber,fnumber,string);
return 0; } 函数名: vscanf 功 能: 从stdin中执行格式化输入
用 法: int vscanf(char *format, va_list param); 程序例: #include <stdio.h>
#include <conio.h> #include <stdarg.h> int vscnf(char *fmt, ...)
{ va_list argptr; int cnt;
printf("Enter an integer, a float, and a string (e.g. i,f,s,)\n");
va_start(argptr, fmt); cnt = vscanf(fmt, argptr);
va_end(argptr); return(cnt); } int main(void) {
int inumber; float fnumber; char string[80];
vscnf("%d, %f, %s", &inumber, &fnumber, string);
printf("%d %f %s\n", inumber, fnumber, string); return 0; }
函数名: vsprintf 功 能: 送格式化输出到串中 用
法: int vsprintf(char *string, char *format, va_list param); 程序例: #include
<stdio.h> #include <conio.h> #include <stdarg.h> char buffer[80];
int vspf(char *fmt, ...) { va_list argptr;
int cnt; va_start(argptr, fmt); cnt = vsprintf(buffer,
fmt, argptr); va_end(argptr); return(cnt); }
int main(void) { int inumber = 30; float
fnumber = 90.0; char string[4] = "abc"; vspf("%d
%f %s", inumber, fnumber, string); printf("%s\n", buffer);
return 0; } 函数名: vsscanf 功 能:
从流中执行格式化输入 用 法: int vsscanf(char *s, char *format, va_list param); 程序例:
#include <stdio.h> #include <conio.h> #include <stdarg.h>
char buffer[80] = "30 90.0 abc"; int vssf(char *fmt, ...) {
va_list argptr; int cnt; fflush(stdin);
va_start(argptr, fmt); cnt = vsscanf(buffer,
fmt, argptr); va_end(argptr); return(cnt); }
int main(void) { int inumber; float fnumber;
char string[80]; vssf("%d %f %s", &inumber,
&fnumber, string); printf("%d %f %s\n", inumber, fnumber,
string); return 0; }
返回目录 |