通常のmallocはsizeof
が含まれていますが、この1つはないと私は代わりに、+ 1を持っていますこのCコードのmalloc i + 1の引数はなぜですか?
int main()
{
int i,n;
char * buffer;
printf ("How long do you want the string? ");
scanf ("%d", &i);
buffer = (char*) malloc (i+1);
if (buffer==NULL) exit (1);
「malloc」の戻り値を実際にキャストすべきではありません。 –