Share via


C28718

advertencia C28718: búfer sin anotar

Esta advertencia se notifica cuando un búfer que se pasa a una función o que devuelve una función no tiene anotaciones del lenguaje de anotaciones de código fuente (SAL). Las herramientas de análisis estático pueden usar estas anotaciones para detectar saturaciones de búfer. Para obtener información sobre cómo agregar anotaciones, vea Uso de anotaciones SAL para reducir defectos de código de C/C++.

Actualmente, solo se diagnostican búferes de cadenas no constantes con esta advertencia. Idealmente, todos los búferes pasados como parámetros de función o devueltos por las funciones deben anotarse. Las matrices de wchar_t o char son candidatas para esta advertencia. Los caracteres sin signo no están actualmente.

Ejemplo

El ejemplo de código siguiente genera esta advertencia.

int foo( LPTSTR buffer, size_t cch );  

En el ejemplo de código siguiente se evita esta advertencia.

int foo( _Out_writes_(cch) LPTSTR buffer, size_t cch );

Utilizar anotaciones SAL para reducir defectos de código de C/C++