c语言函数的return,C语言函数的名词解释
c语言函数的return谁能仔细给我解释一下?
事实上 无论是return ; 还是return X;
为亚东等地区用户提供了全套网页设计制作服务,及亚东网站建设行业解决方案。主营业务为成都做网站、网站制作、亚东网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
在汇编上都只有一条指令:ret(retn)
只不过对于return X; 会在 执行ret指令之前对eax寄存器赋值:
如果是return 0 ; 可能编译器会这样做:
xor eax,eax
ret
其他情况类似
然后从C语言角度讲
对于返回类型为void的函数
函数体内可以出现return;语句来表示结束本函数的执行
这个时候eax还是有值的,因为 函数返回类型是void,因此在调用该函数的地方不可能会去用该函数的返回值,也就意味着该返回值是毫无意义的
楼主想问的 单独的return;语句,对于这行代码,一般只用在返回类型为void的函数体内
若出现在非void返回类型的函数体内,那么返回值是隐含在寄存器eax中的
然后对于有返回值的函数来说
return后面是肯定需要跟一个值的
这个值是被送入寄存器eax带出来的~
我说再多 也许还是会有人不信(本人玩逆向的,这一切信不信那是你们的事,我只能把事实告诉你们,我也只能做到这样了)
下面直接上代码上图:
(微软任何C/C++编译器、VC/VS这些、都支持编译此代码,没有警告,没有错误)
注:主函数不主函数的return都是没有区别的
但是main函数很特别,特别在它有好多种写法,标准C真正的主函数返回类型是int
有2个参数,一个是命令行参数个数,一个是命令行参数
windows下面的主函数可以有三个参数,前两个参数跟标准C一样,第三个参数是环境变量
这些参数都是由mainCRTStartup函数传进来的,而mainCRTStartup再往上你还要研究的话那。。。。那。。。那。。。我只能告诉你这些参数都是要操作系统传进来的吧~~~
我们编程的时候,也许有些菜鸟会把main写成如下形式:void main()
其实这种写法在编译之后都是会被转化成标准写法的底楼说的 不带返回值系统默认返回0这完全是不靠谱的,因为事实当中返回值都是被寄存器eax带出去的,而对于main是必须要返回值的,菜鸟写了没返回值的main在编译之前就被编译器替换掉了,哪来的默认返回0的说法?何来默认?系统会把你写的main换成 标准main形式!标准main会在底下返回0
主函数return的值只有你在其他进程中创建子进程,子进程的返回状态被父进程接收的值就是main的返回值,所以,在你写的程序不需要被其他进程创建的话,main的返回值是无关紧要的
C语言中return用法
return是个好东西,第一个作用,也就是他的真实作用:返回值,这个返回值是和 函数 的类型有关的, 函数 的类型是什么,他的返回值就是什么。
比方主 函数 int main()
{}这里就必须有一个return,只有void时可以不用返回值。
功能函数
int fun()
{
return 1;
}
这个时候fun函数的作用就是返回一个int 类型的值,可以直接拿来用比方int a=fun();
这里就相当于int a=1;
另外一个作用return后面的语句不会执行,我们可以用它来结束程序
比方找出三个数种最大的一个数
void main
{
int a,b,c;
if(ab)
if(bc)
{
return printf("最大值为%d",a);
}
.....
}
在这里if(bc)
我们就可以直接得出a是最大了,就没必要执行下面的语句了,return治理就起到了终止语句的作用了
等用得多了还会有些妙用的,你要自己慢慢体会
c语言return用法
在函数中,如果碰到return 语句,那么程序就会返回调用该函数的下一条语句执行,也就是说跳出函数的执行,回到原来的地方继续执行下去。但是如果是在主函数中碰到return语句,那么整个程序就会停止,退出程序的执行。
函数的返回值是由返回语句return实现的,函数执行的最后一个操作就是返回,返回的意义是:
(1)子程序函数返回主调函数,宣告函数的一次执行结束,在调用期间所分配的变量单元被撤消;
(2)送函数值到调用表达式中,当然这一点并不是必需的,因为有些函数有返回值,有些函数没有返回值。
扩展资料:
c语言中return作为英语单词的含义:
return,英文单词,动词、名词、形容词,作动词时意为“返回;(尤指感觉)恢复;把……退回;以……相报;(网球等)回击(球)”,作名词时意为“返回;恢复;归还;(网球等)回击球;被退回的东西;回路导线”,作形容词时意为“来回的;巡回的;报答的;回程的;返回的”。
参考资料来源:百度百科-return
参考资料来源:百度百科-return
在c语言中,return的作用和用法
一般return语句用于函数返回值,当外界调用该函数需要知道函数执行情况的时候,就需要用返回值来告诉调用者。
而当调用者不需要知道执行情况,只需要去执行该函数的时候,那就不需要返回值。
return的作用1:表示返回,这个程序可以结束了,可以不带参数。
如果你的成员运行到这里,你就不往后运行了,可以加一个return语句,就不会再执行了。
作用2:返回指定类型的值,在定义函数的时候不是有
int
af();int
这里是返回值。return
后面接的就是这个返回值,
这个函数执行后就可以给别的变量赋值了,他的值就是return
后面的值。
当前文章:c语言函数的return,C语言函数的名词解释
本文地址:http://azwzsj.com/article/hdpsii.html