次の方法で共有


警告 C6063

変換指定子 'number' に対応する 'function' の文字列引数がありません。

解説

この警告は、書式指定文字列と一致する十分な引数が指定されていないことを示します。 不足している引数の少なくとも 1 つは文字列です。 この欠陥により、クラッシュやバッファー オーバーフローが発生する可能性があります (呼び出された関数がファミリの sprintf 場合)。また、出力が正しくない可能性もあります。

コード分析名: MISSING_STRING_ARGUMENT_TO_FORMAT_FUNCTION

この警告が発生するコード例を次に示します。

#include <stdio.h>
void f( )
{
  char buff[15];
  sprintf(buff, "%s %s", "Hello, World!");
}

この警告を修正するには、次のコードに示すように、未使用の書式指定子を削除するか、必要な引数を指定します。

#include <stdio.h>
void f( )
{
  char buff[15];
  sprintf(buff, "%s %s ", "Hello","World");
}

次のコードでは、この警告を修正するために、安全な文字列操作関数を使用します。

#include <stdio.h>
void f( )
{
  char buff[15];
  sprintf_s( buff, sizeof(buff),"%s", "Hello, World!" );
}

関連項目

書式指定構文: printf 関数と wprintf 関数
sprintf_s、_sprintf_s_l、swprintf_s、_swprintf_s_l