C6386
Aktualisiert: November 2007
C6386
Warnung C6386: Pufferüberlauf: Zugriff auf <Puffername>, die schreibbare Größe beträgt <Größe1> Bytes, aber es werden möglicherweise <Größe2> Bytes geschrieben: Zeilen: x, y
Diese Warnung gibt an, dass das schreibbare Extent des angegebenen Puffers möglicherweise kleiner ist als der Index, der zum Schreiben verwendet wird. Dies kann einen Pufferüberlauf zur Folge haben.
Beispiel
Der folgende Code generiert diese Warnung und C6201:
#define MAX 25
void f ( )
{
char ar[MAX];
//Code ...
ar[MAX] = '\0';
}
So korrigieren Sie beide Warnungen unter Verwendung des folgenden Codes
#define MAX 25
void f ( )
{
char a[MAX];
// code...
a[MAX - 1] = '\0';
}