精華區beta C_and_CPP 關於我們 聯絡資訊
※ 引述《godwithin (風火輪)》之銘言: : 就是呀 : 函數可以傳回兩個以上的值嗎? : 如果可以 : 希望可以舉個簡單的例子說明(越簡單明瞭越好^___^) : 如果不行 : 那再請問一下 : 函數可不可以傳回一個陣列啊 : 如果可以 : 還是希望可以舉一個簡單明瞭的例子說明一下 就c語言來說 不行傳回兩個以上的值... 解決方法: 1) 如果是固定個數的回傳值 定義一個struct 回傳struct struct point { int x,y; }; point Distance(point x1,point x2); 2) 不定個數回傳值 回傳指標 但是通常不用在陣列指標上 因為這樣容易超出陣列範圍 而通常用在串列指標上 也就是回傳一個串列 struct node { int data; node* next; }; node* function(int a,int b); void main(void) { node *a = function ( 1,2); while ( a != NULL) {.....} } -- "但 ,這不合常理啊!" 你說 沒錯 ! 要求宇宙合於常理根本就不合常理 .. -- ※ 發信站: 批踢踢實業坊(ptt.twbbs.org) ◆ From: Alan.m8.ntu.edu > -------------------------------------------------------------------------- < 作者: threeeyes (星舞絃獨角獸神話憶) 看板: C_and_CPP 標題: Re: 請問一個問題 時間: Sat May 15 08:28:25 1999 ※ 引述《alang (Wrong Answer >_<)》之銘言: : 就c語言來說 不行傳回兩個以上的值... : 解決方法: : 1) 如果是固定個數的回傳值 : 定義一個struct 回傳struct : struct point : { : int x,y; : }; : point Distance(point x1,point x2); 應該是struct point Distance(struct point x1, struct point x2); -- 1998 演算法補習教育密集班 墮落王朝之二朝元老 編號七號 Ddavid 信件Stack位於記憶體位址 chchung@ck.tp.edu.tw, Overflow, 不過麵包stack比較可怕 打斷我Ftp時應該打的電話號碼: 122917122311 (簡單的小編碼, 可是卻比原來還長) 23x23 Puzzle (數字拼盤)強力運作中 我...我錯了!!失誤到只剩銅牌, 嗚嗚嗚嗚... -- ※ 發信站: 批踢踢實業坊(ptt.twbbs.org) ◆ From: infor.ck.tp.edu