000
14.06.2016, 10:55 Uhr
MissWilberforce
|
Um das ewige gemecker des Compilers los zu werden wollte ich meine strcpy() Funktionsaufrufe durch die sichere Version strcpy_s() ersetzen.
Hier mein Programmcode:
char *source = "1234567890";
char dest1[20];
strcpy_s(dest1,sizeof(dest1),source); fprintf(stderr,"[%s]\n",dest1); fflush(stderr);
char dest2[5];
strcpy_s(dest2,sizeof(dest2),source); fprintf(stderr,"[%s]\n",dest2); fflush(stderr);
Der erste strcpy_s Aufruf arbeitet korrekt.
Der zweite führt zu einem Exception Error.
Welchen Sinn macht die Angabe der maximal zu kopierenden Zeichen, wenn die Funktion strcpy_s sie nicht auswertet? |