看板 studyteacher 關於我們 聯絡資訊
※ 引述《jamesmct (jamesmct)》之銘言: : 1.在VB 2010中,下列何者的結果為True ? : (A)3\2 and 3/2 (B)3\2 Or 3/2 (C)3\2 Xor 3/2 (D)以上皆非 : 2. void f1(int x) {x = x+1;} : void f2(int &x) {x = x+2;} : void f3(int *x) {x = x+3;} : void f4(int *x) {*x =*x+4;} : void main() : { : int x = 0; : f1(x);f2(x);f3(&x);f4(&x); : } : X的值為何? 答案是:6 : 有人知道嗎..?? 謝謝 剛找了台unix-based的機器實驗了一下, gcc版本為4.2.1 用g++ compile, x=6 用gcc compile, f2(int &x)此行會有error 原因為c語言並無支援call by reference 只有f4會更改x的值, 因此 x=4 btw, 我想此題應該要註明是用c或c++ 有錯請指正, 感恩 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 163.30.43.1 ※ 文章網址: http://www.ptt.cc/bbs/studyteacher/M.1397177015.A.0E7.html
wwon:感謝您的說明! 04/11 10:49