回答編集履歴
2
サンプルのミスを修正
answer
CHANGED
@@ -97,7 +97,7 @@
|
|
97
97
|
// (中略)
|
98
98
|
|
99
99
|
void memory(void){
|
100
|
-
pimage = (image_type *)malloc(sizeof(image_type) *
|
100
|
+
pimage = (image_type *)malloc(sizeof(image_type) * MAX_NUM_OF_IMAGES);
|
101
101
|
}
|
102
102
|
```
|
103
103
|
|
1
おまけを追加
answer
CHANGED
@@ -105,4 +105,12 @@
|
|
105
105
|
|
106
106
|
## おまけ
|
107
107
|
|
108
|
-
本題とは逸れますが、
|
108
|
+
本題とは逸れますが、
|
109
|
+
1. `printf()` や `FILE` 構造体などは `stdio.h` というヘッダファイルに入っています。できれば `#include <stdio.h>` しておいたほうがよいと思います。
|
110
|
+
1. `ReadImage()` 関数の定義のところで、その引数のところが
|
111
|
+
|
112
|
+
void ReadImage(set) {
|
113
|
+
// ...
|
114
|
+
}
|
115
|
+
|
116
|
+
となっていますが、きちんと `set` の型を明示するべきです。コンパイルエラーにはならないのですが、C言語では何も書かないと勝手に int と思われるという恐ろしいルールがあります。今回は `set` の型は使われ方から見ても int なので結果的に問題はなかったのですが、思わぬバグの温床になります。見た目にもわかりづらいので、例え int を受け取るのであろうと、きちんと書くべきです。
|