C6386
avviso C6386: sovraccarico del buffer: nell'accesso a <nome buffer>, la dimensione non protetta da scrittura è <dimensione1> byte, ma è possibile scrivere in <dimensione2> byte: Righe: x, y
L'avviso indica che l'ambito non protetto da scrittura del buffer specificato potrebbe essere di dimensione inferiore rispetto all'indice utilizzato per la scrittura.Ciò può provocare un sovraccarico del buffer.
Esempio
Il codice seguente genera sia questo avviso che C6201:
#define MAX 25
void f ( )
{
char ar[MAX];
//Code ...
ar[MAX] = '\0';
}
Per risolvere il problema relativo a entrambi gli avvisi, utilizzare il codice seguente:
#define MAX 25
void f ( )
{
char a[MAX];
// code...
a[MAX - 1] = '\0';
}