C#新手求問!!

我要在label1上顯示"Bob3"

我寫這樣可以達成
{
int x, y, z;
x = 1; y = 1; z = 1;
int i = x + y + z;
string var1= "Bob";
label1.Text = var1 + i;
}
但如果寫這樣
{
int x, y, z = 1;
int i = x + y + z;
string var1= "Bob";
label1.Text = var1 + i;
}
就會出現錯誤:
使用未指定的區域變數 'x'
使用未指定的區域變數 'y'

求問大大,為啥會這樣?
課本中有說
int x;
int y; 相等 int x,y,z = 1;
int z;
2015-07-06 20:08 發佈
文章關鍵字 c# 新手
int x, y, z = 1;

這一行等於

int x;
int y;
int z=1;

x跟y都沒有指定數值

所以你要寫成int x=1, y=1, z = 1;
可是……

這個是……??
還有感謝回覆><
沒有批評就沒有進步,一昧的包庇只是無知~!
教材沒寫錯

是你理解錯誤

這種寫法主要是宣告相同資料類型的變數
簡單說就是讓你少打幾次int而已


教材是
int i;
int j;
int k=1;

等於
int i, j, k=1;

所以i跟j都沒有給予數值


相同的道理
int i=1;
int j=2;
int k=3;

等於
int i=1, j=2, k=3;


如果你的理解是int i, j, k=1; 代表i j k都是1,那就是錯的
感謝大大突破盲點!!
我一時眼殘XD,再次感謝你的回覆,謝謝
果然魔鬼藏在細節中啊!!
沒有批評就沒有進步,一昧的包庇只是無知~!
看local variables的功能會比自己猜好,寫程式還是認真點把該補上的寫好,C#主要是M$在維護還好,但換成C/C++這種一堆不同編譯器的語言,很容易遇到某些寫法不支援的情況,會改得很痛苦。
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?