C-Styleで独自関数定義
ふと思いついたことを試す。
▼NewFile-01
・「}」で始める。
・「}」で終わらない。
でビルドするとビルドパス中のUser.cはこうなり、エラーにならず成功する。
サブルーチン中で関数定義するのがミソ。
#include "D_Main.h" #include "D_I2C.h" #include "D_SIO.h" //-------------------------------------------------------------------------------- // Functions //-------------------------------------------------------------------------------- void user_sub_1(void); void user_main(void); //-------------------------------------------------------------------------------- // Program Name : NewFile-01.C //-------------------------------------------------------------------------------- void user_sub_1(void) { // 自作関数定義の為のダミーサブルーチン } void disp_var(BYTE x) { char str[16+1]; sprintf(str, "[%c]%ld", 'A' + x, gV[x]); tx_puts(str); } void disp_ln() { tx_putc('\r'); tx_putc('\n'); } //-------------------------------------------------------------------------------- // Program Name : NewFile-00.C //-------------------------------------------------------------------------------- void user_main(void) { while (TRUE) { gV[VAR_C] = 1023; gV[VAR_A] = gV[VAR_C] - gAD[CN3]; gV[VAR_B] = gV[VAR_C] - gAD[CN4]; disp_var(VAR_A); disp_var(VAR_B); disp_ln(); wait_ms(1000); } user_sub_1(); } //--------------------------------------------------------------------------------
こうまでしてC-Styleを使う意味はないかもしれないが、変数の値を表示するなど汎用的に使う構文はサブルーチン中でCの関数として定義しておくと大変便利。