[問題] C語言的函數是否能回傳不同型態
大家好,想請問一個有關於C的問題。
我想要利用C來模擬PHP的程式,但最大的問題在於變數的型態
目前是打算利用union和struct來記錄變數的資訊
union代表一些基本的變數型態,
而struct中的tag_type則代表目前union中的變數種類
我原先是打算利用判斷tag_type中的值來讀取該變數相對應的欄位
例如:
if( tag_type==0)
return v.inum
else if( tag_type==1)
return v.fnum
...
但是似乎沒有辦法只單靠一個function來完成,
因為function一次只能有一種回傳型態。
不知道有辦法只靠一個function完成這種功能嗎?
還是要用C++才比較有可能?
謝謝大家
以下為程式碼部分:
union value{
int inum; //整數
float fnum; //浮點數
char * str //字串
};
struct var{
int tag_type; //union中的變數型態
union value v;
};
int main(void){
struct var a,b,c;
float d;
int i;
a.tag=0; //int
a.v.inum=10;
b.tag=1; //float
b.v.fnum=1.1;
c.tag=2; //char*
c.v.str="apple";
d=func(a)+func(b); //能寫出一個function自動抓出正確的數值嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.166.151.237
※ 編輯: devon5 來自: 218.166.151.237 (03/19 19:27)
推
03/19 19:57, , 1F
03/19 19:57, 1F
→
03/19 20:20, , 2F
03/19 20:20, 2F
推
03/19 22:24, , 3F
03/19 22:24, 3F
推
03/19 22:45, , 4F
03/19 22:45, 4F
→
03/19 22:46, , 5F
03/19 22:46, 5F
→
03/19 23:01, , 6F
03/19 23:01, 6F
→
03/20 12:32, , 7F
03/20 12:32, 7F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章
14
26