69,380
社区成员
发帖
与我相关
我的任务
分享
#include <stdio.h>
#include <stdarg.h>
void foo(char *fmt,...)
{
char *p=fmt;
va_list arg_ptr;
int i,j,k;
va_start(arg_ptr,fmt);
i=va_arg(arg_ptr,int);
j=va_arg(arg_ptr,int);
k=va_arg(arg_ptr,int);
va_end(arg_ptr);
printf(fmt,i,j,k);
}
int main(void)
{
int n=321;
foo("%d %d %d\n",n+1,n+2,n+4);
getchar();
return 0;
}
/* vprintf example */
#include <stdio.h>
#include <stdarg.h>
void WriteFormatted (char * format, ...)
{
va_list args;
va_start (args, format);
vprintf (format, args);
va_end (args);
}
int main ()
{
WriteFormatted ("Call with %d variable argument.\n",1);
WriteFormatted ("Call with %d variable %s.\n",2,"arguments");
return 0;
}
/* vsprintf example */
#include <stdio.h>
#include <stdarg.h>
void PrintFError (char * format, ...)
{
char buffer[256];
va_list args;
va_start (args, format);
vsprintf (buffer,format, args);
perror (buffer);
va_end (args);
}
int main ()
{
FILE * pFile;
char szFileName[]="myfile.txt";
int firstchar = (int) '#';
pFile = fopen (szFileName,"r");
if (pFile == NULL)
PrintFError ("Error opening '%s'",szFileName);
else
{
// file successfully open
fclose (pFile);
}
return 0;
}