不理解賦值與被賦值的關系?
為啥我寫反了就不行:string boy="秀麗"; ?//男孩的名字 string girl="偉強"; ?//女孩的名字 string temp; ? ?//中間的變量boy=temp; ?//把男孩的名字賦值給temp girl=boy;//把女孩的名字賦值給男孩temp=girl;//把temp中的名字賦值給男孩console.writeline("男孩叫"+boy+"女孩叫"+girl);(我的解釋:先把boy給了temp,然后boy就空了,再把girl給boy,然后girl就空了,最后把temp給grill, 這就結束了。 為什么就是報錯。? 理應的說右邊不是賦值嗎? 就等于上圖的牛奶,AB(等于這里中間的變量)C, A放入B,A杯就空了,然后C杯就放入A,C就空了,然后再把B放入C。) 然后我題就是這樣做的,就是錯的。求解釋
2017-06-17
賦值語句中等號的左邊是被賦值的變量,等號右邊是賦值變量,即右向左傳,例如:把boy值賦給temp當寫成temp=boy;
2017-06-17
你好,首先說一點,賦值= 是把等號右邊的值,賦值給等號左邊的變量,如果你問我為什么是把右邊的值賦值給左邊,而不是把左邊的值賦值給右邊?我只能告訴你,這是一個大家約定好的規則,就像 “紅燈停,綠燈行”,而不是“紅燈行,綠燈?!?;同時在c#,c,java等編程語言中,也是這樣規定的。
再一點,如果把a的值賦值給b,a的值是不改變的,你可以暫時先把“賦值”當成“復制”。下面看個小例子:
運行結果為:
,會發現,a2的值變了,a1的值沒有變,也沒有為空。
最后說下,2個值交換值得寫法,你的主要思路是對的,主要是對賦值還沒有完全掌握而已。把之前代碼中賦值語句兩邊調換一下就可以了。
如果還有不懂得地方,可以繼續回復我。如果覺得回答還不錯的話,麻煩采納一下哈!