「12ステップで作る組み込みOS自作入門」という本のコードを写経しているのですが、割り込みベクタの設定ファイルの配列名の後ろの型の記述の意味がわかりません。
C
1#include "defines.h" 2 3extern void start(void); /* スタート・アップ */ 4 5/* 6 * 割込みベクタの設定. 7 * リンカ・スクリプトの定義により,先頭番地に配置される. 8 */ 9void (*vectors[])(void) = { 10 start, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 11 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 12 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 13 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 14 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 15 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 16 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 17 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 18};
vectorがポインタ型の配列で、関数のポインタを入れることで、割り込み時にその関数に処理が飛ぶようになっているようですが、配列の後ろの(void)はなんのために書かれているのでしょうか。
(void)をなくしてコンパイルしてもエラーは出ず、h8writeでマイコンに書き込んでも正しく動作します。
配列の後ろに型が記述されているようなコードがネットで探しても見つからず、このような記述の意味がわかりません。ご教授願います。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2023/07/03 01:57 編集
2023/07/03 01:58
2023/07/03 02:56
2023/07/03 03:07