我有一種情況,我試圖打印出由Lua中的用戶格式化並通過註冊函數發送給我的信息。我從客戶處得到的是一個格式字符串,參數的數量和每個參數的數字。在調用這個函數之前,我不知道用戶有多少個參數。我通過查詢lua系統得到它們。在C中使用printf,直到運行時才知道有多少個參數
如何在運行時使用格式字符串和數字列表調用printf?我可以在運行時爲數字的值分配一個數組,但printf期望va_list不是參數的數字數組。
我可以根據參數的數量得到大量的'if'語句,但我一直在尋找一種滑溜的方式。
任何想法?
循環遍歷函數中的列表並追加到前一個printf ?. –
嘗試vprintf。 IIRC它與數組一起工作 – fuz