[問題] 有關function的問題

看板C_and_CPP作者 (紫泣)時間15年前 (2010/04/28 02:59), 編輯推噓3(305)
留言8則, 2人參與, 最新討論串1/1
( *[1m *[m 為色碼,可以按 Ctrl+V 預覽會顯示的顏色 ) ( 未必需要依照此格式,文章條理清楚即可 ) 遇到的問題: (題意請描述清楚) int first(); void second(); int first() { int x; cin>>x; swich(x) { case 1: second(); case 2: return -1; default: break; } } void second() { int y; cin>>y; switch(y) { case 1: cout<<"Hello"<<endl; break; case 2: first(); default: break; } } int main() { first(); return 0; } 程式一開始應該是跑到first()去,輸入1進入second();輸入2離開function程式結束。 進入second()之後,輸入2執行first(),但是此時!!輸入2不會離開function程式結束。 希望得到的正確結果: 希望一開始執行程式(進入first),然後執行second這個function,在second裡 執行first,可以在first輸入2之後結束程式。 程式跑出來的錯誤結果: 開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux) Dev c++ 有問題的code: (請善用置底文標色功能) 補充說明: 希望各位版友看得懂我在說甚麼,表達能力有點差請多多包涵。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.68.60

04/28 03:26, , 1F
你要的不是 first 呼叫 second 而是讓 first 傳回選擇值後
04/28 03:26, 1F

04/28 03:27, , 2F
由 main 去呼叫
04/28 03:27, 2F

04/28 03:27, , 3F
(你的 first 應該其實叫做 menu 對吧?)
04/28 03:27, 3F

04/28 03:27, , 4F
又或者另一個解法不是 second 去呼叫 first
04/28 03:27, 4F

04/28 03:28, , 5F
而是讓 second 回傳給 first
04/28 03:28, 5F

04/28 09:20, , 6F
f1->f2->f1 要離開f1兩次才會出去
04/28 09:20, 6F

04/28 09:24, , 7F
我沒看清楚就回...>< 先來試驗一下
04/28 09:24, 7F

04/28 09:32, , 8F
我試沒有問題耶
04/28 09:32, 8F
文章代碼(AID): #1BrpGfhR (C_and_CPP)