- C言語なら俺に聞け(入門編)Part 129 [転載禁止]©2ch.net
499 :デフォルトの名無しさん[sage]:2015/06/30(火) 03:59:21.23 ID:W3oST2wA - >>498
そりゃそうでしょ >>324と同じ間違いをしている int data_input(man** data); あとは scanf("%s", data[i].name); を scanf("%s", data[i]->name); 以下同様 元のプログラムのdata_inputはあくまでポインタのコピーを受け取るだけで、mainのdataは変化してないからね
| - C言語なら俺に聞け(入門編)Part 129 [転載禁止]©2ch.net
500 :デフォルトの名無しさん[sage]:2015/06/30(火) 04:06:34.36 ID:W3oST2wA - あ、それと分かると思うけど一応
data = (man*)malloc(sizeof(man)); ↓ *data = (man*)malloc(sizeof(man)); data = (man*)realloc(data, sizeof(man) * (i + 1)); ↓ *data = (man*)realloc(*data, sizeof(man) * (i + 1)); ポインタのポインタは本来こういう使い方のためのものじゃないんだけど、するとしたらこれしかないし 構造体の中に入れて持って行った方が楽だよ 使う時は勘違いしやすいんで注意
|
|