externについて
Posted: 2008年12月28日(日) 22:36
いつもお世話になっています。「龍神録のプログラミング」の第六章におきまして、
不明な箇所がありましたので、質問させていただきます。
(前略)
//メインループ
while(ProcessLoop() == 0){
switch(func_state){
case 0:
load(); //データロード
first_ini(); //初回の初期化
func_state = 100;
break;
case 100:
graph_main(); //描画メイン
break;
default:
printfDx("不明なfunc_state\n");
break;
}
(略略・・・)
ここの部分なのですが、
このswitch(func_state)の制御文に当たる func_stateは
どこを見ても初期化されていなかった(様に見えた)のですが、なぜか初期値に0が入っています。
(case 0を実行しているので、おそらく0が代入されているのでしょうが…)
func_stateは ヘッダーファイルで、extern int func_state; と宣言されているだけです。
extern宣言されたものは、勝手に初期値0が入るということでも起こっているのでしょうか?
ご返答よろしくお願いします。
不明な箇所がありましたので、質問させていただきます。
(前略)
//メインループ
while(ProcessLoop() == 0){
switch(func_state){
case 0:
load(); //データロード
first_ini(); //初回の初期化
func_state = 100;
break;
case 100:
graph_main(); //描画メイン
break;
default:
printfDx("不明なfunc_state\n");
break;
}
(略略・・・)
ここの部分なのですが、
このswitch(func_state)の制御文に当たる func_stateは
どこを見ても初期化されていなかった(様に見えた)のですが、なぜか初期値に0が入っています。
(case 0を実行しているので、おそらく0が代入されているのでしょうが…)
func_stateは ヘッダーファイルで、extern int func_state; と宣言されているだけです。
extern宣言されたものは、勝手に初期値0が入るということでも起こっているのでしょうか?
ご返答よろしくお願いします。