回答編集履歴
2
readFile での新規要素の追加に insertItem を使うように修正
test
CHANGED
@@ -140,7 +140,11 @@
|
|
140
140
|
|
141
141
|
FILE *fp;
|
142
142
|
|
143
|
-
struct ST_MEMBER *t
|
143
|
+
struct ST_MEMBER head, *last = &head;
|
144
|
+
|
145
|
+
|
146
|
+
|
147
|
+
head.next = NULL;
|
144
148
|
|
145
149
|
|
146
150
|
|
@@ -164,9 +168,9 @@
|
|
164
168
|
|
165
169
|
printf("メモリが確保できませんでした。\n");
|
166
170
|
|
167
|
-
freeList(t
|
171
|
+
freeList(head.next); //確保した全てを開放する
|
168
|
-
|
172
|
+
|
169
|
-
t
|
173
|
+
head.next = NULL;
|
170
174
|
|
171
175
|
break;
|
172
176
|
|
@@ -186,19 +190,11 @@
|
|
186
190
|
|
187
191
|
|
188
192
|
|
189
|
-
if(top == NULL) top = new;
|
190
|
-
|
191
|
-
|
192
|
-
|
193
193
|
//既存の後ろに接続する
|
194
194
|
|
195
|
-
new->prev = p;
|
196
|
-
|
197
|
-
new->next = NULL;
|
198
|
-
|
199
|
-
i
|
195
|
+
insertItem(last, new);
|
200
|
-
|
196
|
+
|
201
|
-
|
197
|
+
last = new;
|
202
198
|
|
203
199
|
}
|
204
200
|
|
@@ -208,7 +204,7 @@
|
|
208
204
|
|
209
205
|
|
210
206
|
|
211
|
-
return t
|
207
|
+
return head.next;
|
212
208
|
|
213
209
|
}
|
214
210
|
|
1
malloc 失敗時に fclose しないバグを修正
test
CHANGED
@@ -166,7 +166,9 @@
|
|
166
166
|
|
167
167
|
freeList(top); //確保した全てを開放する
|
168
168
|
|
169
|
-
|
169
|
+
top = NULL;
|
170
|
+
|
171
|
+
break;
|
170
172
|
|
171
173
|
}
|
172
174
|
|