Freigeben über


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';
} 

Siehe auch

Referenz

C6201