C6386
avertissement C6386 : dépassement de mémoire tampon : accès à <NomMémoireTampon> en cours, la taille accessible en écriture est <taille1> octets, mais <taille2> octets peuvent être écrits. Lignes : x, y
Cet avertissement indique que l'étendue accessible en écriture de la mémoire tampon spécifiée peut être plus petite que l'index utilisé pour y écrire. Cela peut provoquer un dépassement de mémoire tampon.
Exemple
Le code suivant génère cet avertissement et C6201 :
#define MAX 25
void f ( )
{
char ar[MAX];
//Code ...
ar[MAX] = '\0';
}
Pour corriger les deux avertissements, utilisez le code suivant :
#define MAX 25
void f ( )
{
char a[MAX];
// code...
a[MAX - 1] = '\0';
}