正文

C语言库函数举例说明(二)2006-01-24 15:04:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/love0you0forever/9871.html

分享到:

V字母开头

函数名: vfprintf 
功  能: 送格式化输出到一流中 
用  法: int vfprintf(FILE *stream, char *format, va_list param); 
程序例: 

#include  
#include  
#include  

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  
#include  
#include  

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  
#include  

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  
#include  
#include  

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  
#include  
#include  

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  
#include  
#include  

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; 

阅读(3223) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册