gpt4 book ai didi

c++ - 是否可以直接传递 C 省略号调用?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:53:51 25 4
gpt4 key购买 nike

void printLine(const wchar_t* str, ...) 
{
// have to do something to make it work
wchar_t buffer[2048];
_snwprintf(buffer, 2047, ????);
// work with buffer
}

printLine(L"%d", 123);

我试过了

  va_list vl;
va_start(vl,str);

还有类似的事情,但我没有找到解决方案。

最佳答案

这是执行此操作的简单 C 代码,您必须包含 stdarg.h 才能使其工作。

void panic(const char *fmt, ...){   char buf[50];   va_list argptr; /* Set up the variable argument list here */   va_start(argptr, fmt); /* Start up variable arguments */   vsprintf(buf, fmt, argptr); /* print the variable arguments to buffer */   va_end(argptr);  /* Signify end of processing of variable arguments */   fprintf(stderr, buf); /* print the message to stderr */   exit(-1);}

典型的调用是

panic("The file %s was not found\n", file_name); /* assume file_name is "foobar" *//* Output would be: The file foobar was not found*/

希望对您有所帮助,最好的祝福,汤姆。

关于c++ - 是否可以直接传递 C 省略号调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2177209/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com