2016 - 2024

感恩一路有你

c语言send函数 既然C语言函数的局部变量会被释放,那为什么函数还可以把它return返回呢?

浏览量:1657 时间:2021-03-14 18:51:23 作者:admin

既然C语言函数的局部变量会被释放,那为什么函数还可以把它return返回呢?

看了下面兄弟的回信,我们只能说他们一半是对的。

真正的原因是abi(应用程序二进制接口)。

ABI定义了与系统交互的细节,如数据类型、大小和对齐方式;调用约定(控制函数的参数传递方向、可变长度处理、堆栈清理体以及如何接受返回值等);系统调用的编码以及应用程序如何对操作系统进行系统调用系统;以及采用完整ABI操作系统基本格式、程序库等的第二代对象文件。完整的ABI,如英特尔二进制兼容标准(IBCs),允许支持它的操作系统上的程序在支持此ABI的其他操作系统上运行,而无需修改。

其他ABI标准化细节包括C名称修改和同一平台上编译器之间的调用约定,但不包括跨平台兼容性。

至于下面兄弟提到的eax save返回值,这只是X86的ABI规范。在其他CPU架构平台(如PowerPC)中,实现是不同的!--在C语言中,一个函数一般由两部分组成,一部分是函数头,另一部分是函数体。

函数体是用编程语言定义函数的所有代码的总和。函数体是一些用花括号括起来的语句,它们完成一个函数的特定函数。函数体的前面部分是定义和描述部分,后面是语句部分。函数声明和函数体共同构成函数定义。

函数头是指函数体之前的所有部分,用于数学和程序设计领域。它的功能是给出函数的返回类型。在函数定义中,函数体之前的所有部分都称为函数头,它给出函数的返回类型、每个参数的顺序和类型等函数原型信息。因此,当没有特殊的函数原型描述语句时,系统从函数头中获取函数原型信息。

c语言send函数 c语言rand函数头文件 c语言什么时候开始执行

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。