来来来转动你的脑筋

来源:百度知道 编辑:UC知道 时间:2024/09/28 10:25:31
是这样的
函数运算的时候总要知道函数声明中有几个值
比如
fun(int i,int j,int k)
以上是3个值
但是我想了这么一个情况
函数运算之前并不知道要输入几个值,或许是3个也或许是4和,值的个数由用户输入,有什么办法实现呢如何来写这个函数?
我只会C

有啊 fun(int n,...)

baigle
是你啊 昏

这个函数方式 是在c++primer 书中看到的 也许也可以在c中通用

在C++里有一个很好用的东西:
只要在头文件里#include<vector>
就可以用了:
vector<int> data;
for(int i=0;i<count;i++)
{
cin>>zhan;
data.pushuback(zhan);
}
i可以在运算中确定大小,也就是确定数组的大小
从而解决你的问题

有两种方法,一个是函数的重载,你可以写同名的几个函数如:
fun(int i,int j,int m,int n){
}
fun(int i,int j,int m)
这样调用时输入参数不同,相应的也不同.当然,你的函数体也要作相应的修改.
另一个方法是用带默认值的函数参数,如
fun(int i,int j,int m,int n=9999)
你可以在函数体里判断n的值有没有改变,从而作相应的处理,默认值最好比较特殊,调用时不用到的值最好

这个用2楼的容器貌似很不错