警告 C6274
'function' の呼び出しで文字が必要な場合に、パラメーター 'number' として渡される文字以外
解説
この警告は、書式指定文字列で、文字が必須である (%c
または %C
指定など) が、float、string、構造体などの整数以外の文字が渡されていることを示します。 この障害により、誤った出力が生成される可能性があります。
コード分析名: NON_CHAR_ARGUMENT_TO_FORMAT_FUNCTION
例
この警告が発生するコード例を次に示します。
#include <stdio.h>
void f(char str[])
{
char buff[5];
sprintf(buff,"%c",str);
}
この警告を解決するには、次のコードを使用します。
#include <stdio.h>
void f(char str[])
{
char buff[5];
sprintf(buff,"%c",str[0]);
}
次のコードでは、安全な文字列操作関数 sprintf_s
を使用して、この警告を解決します。
#include <stdio.h>
void f(char str[])
{
char buff[5];
sprintf_s(buff,5,"%c", str[0]);
}
書式指定構文: printf 関数と wprintf 関数
sprintf, _sprintf_l, swprintf, _swprintf_l, __swprintf_l
C4477
C4313
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示