va_
メソッドに問題があり、例が見つからない(またはキーワードの内容がわからなかった)。 va_startc可変関数、同じ引数、異なる書式
エラーの
間違った使い方を:問題は、私は、異なるフォーマットのために同じ引数を使用する必要がありますが、コンパイラは私に与え、です。私が試しているコードは次のようなものです:
void vSaveNecessaryFields(EnumA eFormat, ...) { va_list xArgs, xArgs2; const char *fmt1 = NULL, *fmt2 = NULL; char caString[100] = {0}; fmt1 = cpGetDbFormat(eFormat); fmt2 = cpGetPrinterFormat(eFormat); va_start(xArgs1, fmt1); va_copy(xArgs2, xArgs1); vsnprintf(caString, sizeof(caString), fmt1, xArgs1); vSaveToDb(caString); va_start(xArgs2, fmt2); vsnprintf(caString, sizeof(caString), fmt2, xArgs2); vPrintFormatted(caString); va_end(xArgs2); va_end(xArgs1); }
どうすればこの問題を解決できますか?
'va_startマクロ(xArgs1、FMT1)' - > 'のva_start(xArgs1、eFormat)' – LPs
今それをしようとしています。誰がこれを棄却したのですか? –
それは働いた。答えとして書くと私はそれを受け入れます。 –