C で単純な可変引数リスト関数を 1 つ作成しましたが、機能しません。その関数を 1 つの引数で呼び出し、その関数内でその引数をチェックすると、その引数の値が失われました。たとえば、次のコードでは、「format」の値を確認すると、常に NULL のままです。つまり、常に「format is NULL」と表示されます。デバッグ メッセージで。この原因の可能性を教えてください。
Calling the function: lcdPrintf( "Change" );
int lcdPrintf( char * format, ... )
{
if ( *format ) {
printf("format is not NULL.\r\n");
}
else {
printf("format is NULL.\r\n");
}
return -1;
}