ヘッダ内のstruct buttonとmain関数内のstruct buttonは別物なんでは
ヘッダの頭の辺りにstruct buttonの定義を書くといいと思う

よくわからないけど