fscanf的包装功能不起作用

时间:2012-12-03 22:30:06

标签: c++ scanf variadic-functions

我尝试围绕fscanf创建一个包装函数,但不明白为什么它不起作用,

char name[255] = {0};
fscanf(inFile, "%s", &name);   // This work fine

但是当我这样做时

int WrapFScanF(File* inFile, const char* format, ...) {

    int rv;
va_list args;

va_start(args, fmt);
rv = fscanf(file, fmt, args);
va_end(args);

return rv;
}

char name[255] = {0};
WrapFScanF(inFile, "%s", &name);   // This work fine

它不起作用。有任何想法吗?谢谢!

1 个答案:

答案 0 :(得分:3)

您真的想了解vfscanf()。当fscanf() va_list va_list无法像{{1}}那样使用时,请使用{{1}}代替{{1}}。