Share via


C6064

경고 C6064: 변환 지정자 <number>에 해당하는, <function>에 대한 정수 인수가 없습니다.

이 경고는 형식 문자열에 맞는 충분한 인수가 전달되지 않았으며 누락된 인수 중 하나가 정수임을 나타냅니다. 이 오류로 인해 출력이 잘못될 수 있습니다.

예제

다음 코드에서는 sprintf 호출에 사용된 인수 개수가 잘못되었고 누락된 인수가 정수이기 때문에 이 경고가 생성됩니다.

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

이 경고를 해결하려면 다음 코드에서처럼 누락된 인수를 지정합니다.

#include <string.h>
void f( )
{
  char buff[15];
  char *string = "Hello, World";

  sprintf(buff,"%s %d",string, strlen(string));
}

다음 코드에서는 안전한 문자열 조작 함수 sprintf_s를 사용하여 이 경고를 해결합니다.

#include <string.h>
void f( )
{
  char buff[15];
  char *string="Hello World";

  sprintf_s(buff,sizeof(buff),"%s %d", string, strlen(string));
}

참고 항목

참조

sprintf_s, _sprintf_s_l, swprintf_s, _swprintf_s_l