PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
C_and_CPP
[问题] 函数中参数个数
楼主:
dailiner
(呆凛)
2014-05-16 22:42:42
想请问一下,假设现在有个函数,
我设定他最多的参数个数是 4 个,
但其实每次用到这函数的时候参数设定个数不一定,1~4个都有可能,
请问有没有办法知道确切个数是几个?
阵列个数我知道可以用 sizeof
但函数参数估狗找到的几乎都说不定参数没办法准确知道。
举个例子,像是有个骰子,我请人丢,可以丢1~4次,
根据丢的次数和值,有一套算法来计算每个人的结果并输出。
void database()
{
throw(1,4,6);
throw(2,2);
throw(6,3,1,5);
throw(5);
}
void throw(char data1, char data2, char data3, char data4)
{
先取得这次丢的次数;
switch(次数)
{
case 1:
计算方式1; //maybe data1*404
break;
case 2:
计算方式2; //maybe data1*203 + data2*200
break;
case 3:
计算方式3; //maybe data1*150 + data2*130 + data3*122
break;
case 4:
计算方式4; //maybe data1*99 + data2*100 + data3*101 + data4*102
break;
default:
break;
}
输出计算结果;
}
请问有解吗??卡住好几天了@_@
谢谢!!
作者:
uranusjr
(â†é€™äººæ˜¯è¶…級笨蛋)
2014-05-16 22:56:00
C++ 的话用默认参数或多载就解了, C 可能要用 va_list
楼主:
dailiner
(呆凛)
2014-05-16 23:00:00
是c @@
作者:
LPH66
(-6.2598534e+18f)
2014-05-16 23:00:00
C 的 va_list 需要额外参数帮助才行这个额外参数可以是个数, 也可以是结尾值
作者:
cismjmgoshr
(--???--)
2014-05-16 23:15:00
如果参数都是同一个型态的变量,传一个指标(或阵列)再加上参数的个数,这样可行吗?
楼主:
dailiner
(呆凛)
2014-05-16 23:36:00
我试试看~ 谢谢各位~!
作者:
Raymond0710
(雷门)
2014-05-16 23:38:00
传struct { char data[4]; int size; }
作者:
sunneo
(艾斯寇德)
2014-05-17 05:55:00
用宏来辅助(参考这讨论
" target="_blank" rel="nofollow">
楼主:
dailiner
(呆凛)
2014-05-17 11:59:00
谢谢 我试试看~!
作者: TeaEEE (爱不趴 不爱趴)
2014-05-19 02:49:00
没人觉得原PO真正的解法是用多载吗?
作者:
LPH66
(-6.2598534e+18f)
2014-05-19 06:55:00
那个, 原 PO 在二楼推了是 C 不是 C++...
继续阅读
[问题] RTF档案加入picture的问题
ceon
[问题] linux socket程式会造成死当
neko0624
[问题] checkedListBox回传选项编号或文字内容
Klauspan
[问题] 关于SDK_YUV差值影像问题
huangnc04
[问题] Xcode main.c问题
doom0819
[问题] UDP指定IP接收封包
KuoZheChiou
[问题] 用Qt的QTableWidget做出像excel试算效果
wtchen
[问题] 一程式问题 和一个小问题
horse2819
[问题] 单精度 双精度问题
wu110011
[分享] QCustomPlot -- Qt C++ plotting widget
wtchen
Links
booklink
Contact Us: admin [ a t ] ucptt.com