これは宿題の一部です。
メソッド getLine でファイルの 1 行を読み取って返そうとしています。
char *getLine(FILE *input) {
char line[30];
if(fgets(line, sizeof(line), input)!=NULL)
{
return line;
}else{
return NULL;
}
}
これは、ポインターに関して教えられたことからうまくいくようですが、警告メッセージを削除することはできませんwarning: function returns address of local variable [enabled by default]
。この警告は行を参照していますreturn line;
。私の割り当てでは、コンパイル時に警告やエラーが発生しないことが必要です。私が間違っていることはわかりません。
私が見つけたヘルプのほとんどは、テキスト行の malloc-ing スペースを提案していましたが、別のクラスでいくつか行ったことがあるにもかかわらず、クラスではまだカバーしていません。それは本当にこれを行うための最良の方法ですか?もしそうなら、私はプログラムのどこでも自由にすることができますか?