c语言中void和int类型函数的定义,急!!!!!!!!!

intInsertList(inti,charstr,Sqlist&L){if(i>L.length||i<=0)return1;else{for(intn=L.leng... int InsertList(int i,char str,Sqlist &L)
{
if(i>L.length||i<=0)
return 1;
else
{
for(int n=L.length-1;n>=i-1;--n)
L.elem[n+1]=L.elem[n];
L.elem[i-1]=str;
++L.length;
return 0;
}
}
这个是顺序表的插入算法,大家应该很熟悉吧
现在我把它改成void类型
void InsertList(int i,char str,Sqlist &L)
{if(i>L.length||i<=0)
;
else
{
for(int n=L.length-1;n>=i-1;--n)
L.elem[n+1]=L.elem[n];
L.elem[i-1]=str;
++L.length;

}
}
程序依然能够执行

既然执行结果相同,那么什么时候要用void,什么时候要用int呢?
(我知道int可以用return把值返回给函数)
感谢各位,但是,本例本来是不需要返回值的,返回值没有被调用;
为何最优算法中用的是int而不是void?
展开
 我来答
一年一寻
2009-12-18
知道答主
回答量:20
采纳率:0%
帮助的人:0
展开全部
void就是没有返回值的函数,int是返回整数型的函数,不需要返回值就用void喽~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
步秀慧eR
2009-12-18 · TA获得超过111个赞
知道小有建树答主
回答量:362
采纳率:0%
帮助的人:202万
展开全部
函数的类型(声明函数的类型)本来在意思 就是函数执行结果的类型,也就是函数返回值的类型。
在C++中,声明一个 函数是必须要有函数类型的
在原来在C语言中不同,C语言中函数的类型如果不声明的话标识返回值可以是任意类型。

既然执行结果相同,那么什么时候要用void,什么时候要用int呢?
综上所述
当你需要返回结果的时候,则声明返回值为int
不需要在时候则为VOID
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友8487bcf4e
2009-12-18 · 超过32用户采纳过TA的回答
知道答主
回答量:93
采纳率:0%
帮助的人:85万
展开全部
简单的说,定义为void类型的函数就是函数执行后不会返回任何值,定义为int的函数,执行后返回整型的数。
当你需要返回一个整型的值时,就把函数定义为int,不需要返回值时,可用void、int或其他类型定义函数。

“(我知道int可以用return把值返回给函数)”
我想你应该理解错了,return 返回的值不是返回到函数里面的,它是你执行这个函数后,可以return一个值,然后可以赋给一个变量如:
e=InsertList(i,str,L)
你也可以设当插入成功时返回1,失败时返回0,这样再用一个判断语句(如if(InsertList(i,str,L)))进行判断是否插入成功。这是return得一种用法。

从函数的if中大概可猜想到,在main函数中应该也有一个判断,根据InsertList函数的不同返回值,做出不同的操作。有了返回值,程序就可有更多的变化空间
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hallowwar
2009-12-18 · TA获得超过553个赞
知道小有建树答主
回答量:630
采纳率:0%
帮助的人:408万
展开全部
Sqlist &L是一种引用,它直接对传入的链表进行操作,所以是否return长度或者其它什么对函数都没有影响,在退出函数时你传入的L已经被彻底的改变了,这就是引用的独到之处。
void 和int的用法见楼上。

最优算法加return也就是为了安全,比如,成功还是失败,调用函数要知道啊。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
叶孤学民0jeb7f
2009-12-18 · TA获得超过233个赞
知道小有建树答主
回答量:453
采纳率:0%
帮助的人:333万
展开全部
当子函数需要给调用函数提供一些必要的信息的时候就需要返回值了
比如说计算结果
或者是执行状态信息等
一切看程序的需要
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式