C++ 筆記 可變參數函數

在C++中有時需要使用參數數目未知的函數,如輸出日誌等場景。

這時需要用到頭文件

#include<stdarg.h>

需要用到以下類型和方法

va_list
typedef char * va_list; //可變參數列表
va_start(ap,v) //獲取可變參數列表的第一個參數地址,ap是類型va_list的指針,v是可變參數最左邊的參數
va_arg
va_arg(ap,t) // 獲取可變參數的當前參數,返回指定類型並將指針指向下一參數(t參數描述了當前參數的類型)
va_end
va_end(ap) //// 清空va_list可變參數列表
vasprintf:發送格式化輸出到串口,返回生成字串的長度(除去\0),錯誤情況返回負值

參考資料:

https://www.jb51.net/article/144211.htm

https://www.cnblogs.com/itxiaocaiyidie/archive/2012/02/02/2335922.html

https://www.jianshu.com/p/bf23b4163b79

https://www.cnblogs.com/shudai/p/3342477.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章