作者fzrmitsul (我的妹妹很可愛)
看板Python
標題[問題] 一個c++程式片段問題
時間Thu May 14 23:18:43 2009
void fun_a(int,int);
void fun_b(int,int);
void fun_a(int x,int y)
{cout<<(x+y)<<endl;}
void fun_b(int x,int y)
{cout<<(x-y)<<endl;}
int main()
{
int a=5,b=3;
void(*ptr[])(int,int)={fun_a,fun_b};
ptr[1](a,b);
return();
}
求執行結果 a.8 b.2 c.5 d.3
想請問各位前輩,我看不懂這程式要怎麼代呢?
ptr[1](a,b)這是什麼意思呢?
上面那一行*ptr[]是指傳值的意思嗎??
謝謝各位前輩
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 60.244.73.2
→ pkyosx:你應該去 C_and_CPP 版問才對... 答案是 5-3 = 2 05/14 23:35
→ pkyosx:ptr[0] = fun_a, ptr[1] = fun_b, 這是 function pointer 05/14 23:36
推 kenzou:這也蠻妙的,不太懂C卻能跑到Python版問function pointer。 05/15 02:03
→ fzrmitsul:謝謝樓上的二位前輩,我問錯版了..對不起 05/15 09:55