推 LPH66: #include <stdarg> /* C header, C++ 用 <cstdarg> */ 02/28 16:24
→ LPH66: 然後用吃 va_list 參數的裡層函數接外層的不定參數 02/28 16:25
推 a1b2c3d4e5x: 搜尋可變參數或 va_list 之類的 02/28 16:26
→ LPH66: printf/scanf 系函式都有對應的 v 版, 函式前面加個 v 即是 02/28 16:26
→ LPH66: 例如 vsprintf, vscanf 等等 02/28 16:26
→ Caesar08: 如果是C++,可以參考Parameter pack或variadic template 02/28 16:28
謝謝樓上幾位的建議, 已解決..
做法如下,
#include <stdarg.h>
Func(const unsigned char *str, ...)
{
unsigned char buf[80];
va_list arg;
va_start(arg, str);
vsprintf(buf, str, arg);
va_end(arg);
printf("%s Test\n", buf);
}
※ 編輯: MaxHaru (118.171.215.105), 02/28/2016 16:54:23