return的用法C语言中return的用法是什么

return的用法  时间:2021-07-31  阅读:()

c语言中return的用法

return i说明调用该函数会返回一个int类型的值。

在别的函数比如main函数调用该函数,可以用一个整型变量来接收此函数的返回值。

并继续向下执行。

关于C语言的主函数中的return 的用法 求高手解

蛋疼死了 楼下这么多,就没一个解释正确的 这些人纯粹只学C语言而不去了解C的本质,无奈,唉 C语言,仅仅是一种高级语言,到头来都是要转化成机器码拿到CPU上去执行的 拿PC下的C语言来说 对于一个函数 当返回类型是字节、字、双字的情况下,返回值是会被送入寄存器eax带出去的 当返回值是大于双字的情况是很复杂的,在这里我也不解释了,我怕500字都写不完 事实上 无论是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的意思就是返回,只要是函数,都可以用return来退出该函数,不执行剩下的所有代码,举个例子 void fun() { int n = 0; return; // 这里函数fun就返回了,不会再执行后面的n=2,因此函数退出前n的值都为0 n = 2; }

ZJI(月付450元),香港华为云线路服务器、E3服务器起

ZJI发布了9月份促销信息,针对香港华为云线路物理服务器华为一型提供立减300元优惠码,优惠后香港华为一型月付仅450元起。ZJI是原来Wordpress圈知名主机商家:维翔主机,成立于2011年,2018年9月更名为ZJI,提供中国香港、台湾、日本、美国独立服务器(自营/数据中心直营)租用及VDS、虚拟主机空间、域名注册等业务,商家所选数据中心均为国内访问质量高的机房和线路,比如香港阿里云、华为...

Advinservers:美国达拉斯便宜VPS/1核/4GB/80GB SSD/1Gbps不限流量/月付$2.5/美国10Gbps高防服务器/高达3.5TBDDos保护$149.99元/月

Advinservers,国外商家,公司位于新泽西州,似乎刚刚新成立不久,主要提供美国和欧洲地区VPS和独立服务器业务等。现在有几款产品优惠,高达7.5TB的存储VPS和高达3.5TBDDoS保护的美国纽约高防服务器,性价比非常不错,有兴趣的可以关注一下,并且支持Paypal付款。官方网站点击直达官方网站促销产品第一款VPS为预购,预计8月1日交付。CPU为英特尔至强 CPU(X 或 E5)。官方...

BuyVM迈阿密KVM上线,AMD Ryzen 3900X+NVMe硬盘$2/月起

BuyVM在昨天宣布上线了第四个数据中心产品:迈阿密,基于KVM架构的VPS主机,采用AMD Ryzen 3900X CPU,DDR4内存,NVMe硬盘,1Gbps带宽,不限制流量方式,最低$2/月起,支持Linux或者Windows操作系统。这是一家成立于2010年的国外主机商,提供基于KVM架构的VPS产品,数据中心除了新上的迈阿密外还包括美国拉斯维加斯、新泽西和卢森堡等,主机均为1Gbps带...

return的用法为你推荐
防恶意点击防恶意点击的原理是什么,是根据什么判定的?达内学院达内毕业后一般待遇多少圣诞节网页制作圣诞节贺卡制作dnf客户端消失最近DNF玩着玩着客户端忽然无故消失,怎么回事智能公共广播系统有谁知道公共广播系统都包括那些设备音响解码CD锁了怎么解联通玩电信游戏关于联通到底能不能去电信区玩游戏。。。。oa源码小猪cms微信oa源码好用不?oa系统包含哪些模块办公OA系统由哪几大部分组成盈科oa办公系统oa的登陆帐号和密码
哈尔滨域名注册 域名服务器的作用 标准机柜尺寸 mysql主机 bgp双线 cdn联盟 1美金 idc查询 怎么建立邮箱 ebay注册 服务器防火墙 lamp怎么读 注册阿里云邮箱 supercache godaddy空间 中国电信宽带测速 ftp是什么东西 压力测试工具 主机游戏 远程主机强迫关闭了一个现有的连接 更多