天天看點

【C語言】函數不定長參數

目錄

前言

文法

va_list

va_start

va_arg

va_end

基于頭檔案 stdarg.h

基于 STM32

基于 C

如果讀者對指針和堆棧的知識點比較熟悉,本筆記就一眼飄過,隻需要看看怎麼用就可以了哈哈。

主要的宏

不同平台,該宏可能不一樣,以下是 STM32+C

void *

這個指針就是一張白紙,任何類型的指針都能指派給 void* 類型。

va_list 用于存放可變長參數的

擷取可變參數清單的第一個參數的位址

args 必須為 va_list 類型

str 參數必須為可變長參數(...)的前一個參數的位址

擷取可變參數的目前參數

傳回指定類型

并将指針指向下一參數

第二個參數為類型,即int、char char*之類的

空va_list可變參數清單