gpt4 book ai didi

mysql - 如何对 C 中的可变参数列表中的每个参数运行函数

转载 作者:行者123 更新时间:2023-11-30 18:43:41 25 4
gpt4 key购买 nike

我希望在 vararg 列表的每个参数上调用 mysql_real_escape,然后将其传递给 vsprintf 以包含到 SQL 字符串中,无论如何我可以轻松地做到这一点吗?似乎我错过了准备好的陈述,但这似乎很有用。

最佳答案

调用va_start()(和va_end())两次。

第一次在循环中使用 va_arg() 来测试(和更改)每个参数;
下一次是 vsprintf

/* check args */
va_start(val, parm);
while (MORE_ARGUMENTS) {
arg = va_arg(val, char*);
/* mysql_real_escape(arg); */
}
va_end(val);

/* print */
va_start(val, parm);
vsprintf(buf, FORMAT_STRING, val);
va_end(val);

关于mysql - 如何对 C 中的可变参数列表中的每个参数运行函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3742530/

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