作者maboroshiga (幻)
站內C_and_CPP
標題[問題] switch的變數 redifine 問題
時間Wed Sep 16 02:01:08 2009
請問 以下這樣的寫法是不行的嗎
compile會跟我說變數redefined
switch(x)
{
case EStatus1:
char[40] oldval;
char[40] newval;
oldval.... //使用這兩個變數
break;
case EStatus2;
char[40] oldval;
char[40] newval;
.... //一樣是使用這兩個變數
break;
}
如果把oldval跟newval的定義 寫在switch之前 那就ok
只是這樣我在不同case裡 要用這兩個變數時
就得先多一個步驟把變數清空(reset)
(若不是char[40]而是其他自定義的class 就比較麻煩)
我以為能像if..else 一樣 可以在兩個{ }區塊內都定義
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.204.138.49
1F:推 ledia:你的 code 沒區塊呀, 要的話在 case 後用 { } 包起來 09/16 02:08
2F:→ ledia:變數的 scope 在區塊內, 就不會有重覆定義的問題 09/16 02:09