realloc 関数を使用して、入力文字を動的配列に格納しようとしています。使用後にメモリを解放するために free メソッドを呼び出さずに使用すると、すべてがうまくいきます。しかし、フリーメソッドで使用するとランタイムエラーが発生します。これが私のコードスニペットです。
int main(){
char *message ;
int len = 0 ;
char c ;
while((c=getchar()) != '\n'){
message = realloc(message,(len+1)*sizeof(char)) ;
message[len++] = c ;
}
message = realloc(message, (len+1)* sizeof(char));
message[len]='\0' ;
printf("Message is %s\n",message);
free(message) ;
return 0 ;
}
誰でもこれを理解できますか。両方の方法を一緒に使用する必要があるため..ありがとう!!!!