다음을 통해 공유


C6054

경고 C6054: <variable> 문자열이 0으로 종료되지 않을 수 있습니다.

이 경고는 0으로 종료되는 문자열이 필요한 함수에 0으로 종료되지 않는 문자열이 전달되었음을 나타냅니다.0으로 종료되는 문자열이 필요한 함수는 0을 찾기 위해 버퍼의 끝을 벗어나게 됩니다.이 오류로 인해 악용될 수 있는 버퍼 오버런이나 충돌이 발생할 수 있습니다.따라서 프로그램에서는 문자열이 0으로 끝나는지 확인해야 합니다.

예제

다음 코드에서는 이 경고를 발생시킵니다.

#include <sal.h>

void func( _In_z_ wchar_t* wszStr );

void g ( )
{
    wchar_t wcArray[200];
    func(wcArray); // Warning C6054
}

이 경고를 해결하려면 다음 샘플 코드에서처럼 함수 func()를 호출하기 전에 wcArray를 null로 종료합니다.

#include <sal.h>

void func( _In_z_ wchar_t* wszStr );

void g( )
{
    wchar_t wcArray[200]; 
    wcArray[0]= '\0';
    func(wcArray);
}

참고 항목

참조

C6053

기타 리소스

주석 개요

NullTerminated