可変長パラメーター関数では、「...」を最後に配置する必要があります。また、デフォルト値が有効なパラメーターも最後にある必要があります。
では、同じ 1 つの関数で必要な両方についてはどうでしょうか。
これで、「logLevel」に従ってログを出力していた void MyPrint(int32_t logLevel, const char *format, ...) というログ ユーティリティができました。
ただし、「logLevel」を必要とせずに、MyPrint("Log test number%d", number) として使用できることを願っています。
質問: デフォルトの引数と可変個引数関数 は役に立ちませんでした。