今天是我第一天写博客,最近一直在看c语言的书。函数调用是一个非常重要的知识点,相当于各个模块的“接口”,当然c语言里没有接口的说法。
c语言中实参和形参要么是基本的数据类型或者是结构体类型,当然也可以指针(地址),由于在c语言规定数组名就是一个地址,因此也可以把数组规定到指针的行列。另外,不要天真的以为指针是一种数据类型,int a;int ×p=a;指针因为存储了某种类型变量的地址而指向某个变量。下面就分两种情况来讨论一下。
首先,不管怎样,实参到形参都是值传递,只不过有时是一个具体的值,有时是值的地址。
1、当参数为基本数据类型变量或者是结构体变量时,实参把对应的变量的值传给了形参,为了体现出函数调用所取得的效果,可以选择在函数体设一个返回值即return a;作为函数的出口然后在主调函数里设一个变量接受这个return的返回值(如求两个整数的最值)。另外根据我看书的经验,也可以直接通过在函数体里执行输出语句将结果打印到屏幕上(如输出一个顺序表里的值)
2、第二种方式就是老师经常强调的传递指针,在内存块里存储着各个数据的指针,当实参把值传递给形参时,实参和形参共同指向同一段内存块,在被调用的函数里,对数据的各种操作都可以在主函数里体现,因为主函数里的实参始终指向内存块的一个地址。
如void main(){int b[10],*p;p=a;paixu(a,10);}void paixu(int a[],int n){.....}p就是一直指向数组a的首地址。
总之,慢慢体会,多看书,一定会有所收获。每一个在程序员道路上行走的屌丝都能看到新世纪的阳光。
分享到:
相关推荐
### 关于C语言中函数调用和参数传递机制的探讨 在C语言中,函数是程序的基本构建单元之一,它们不仅能够实现代码的重用,还能通过参数传递机制实现数据的有效交互。本文将深入探讨C语言中的函数调用机制以及参数...
结合汇编讲解了c语言汇中函数参数是如何传递,如何调用的
以下是一些关于C语言函数调用的关键知识点: 1. **函数定义与声明**: - 函数定义包含函数返回类型、函数名和参数列表。例如,`int add(int a, int b)`定义了一个名为`add`的函数,它接受两个整数参数`a`和`b`,并...
用调用函数求500(可修改)以内的素数
C语言函数的调用是指在程序中使用已经定义好的函数,以实现代码的重用和提高程序的结构清晰度。在一个程序中,如果把所有的语句都写到main函数中,程序会变得很乱另一方面,当同一个功能需要在不同地方执行时,我们...
在递归调用中,每一级函数调用都有自己的变量,递归调用就相当于又从头开始执行函数的代码。每次函数调用都会返回一次,并且按顺序逐级返回递归。 在递归调用中,我们需要注意递归的深度和性能问题。递归调用的深度...
C语言函数调用汇编语言函数是软件开发中的一种常见技术。本文将对C语言函数调用汇编语言函数进行总结,详细介绍相关知识点。 一、C语言函数调用汇编语言函数的定义 C语言函数调用汇编语言函数是指在C语言程序中...
以下是关于C语言函数调用的详细解释: 1. **函数的分类:** - **标准函数**,也称库函数,是由系统提供的,如`printf`、`scanf`等,可以直接在程序中调用,无需用户编写。 - **用户自定义函数**,由程序员根据...
函数的定义、声明和调用是C语言编程中不可或缺的部分。本篇将深入探讨这三个概念,以及如何处理参数传递,特别是数组作为函数参数的情况。 1. **函数的定义**: 函数定义是创建一个函数的过程,它包括函数名、返回...
在探讨C语言中的函数调用格式时,我们首先需要明确C语言中函数的基本概念和组成。C语言中的函数是一段完成特定任务的代码块,可以实现代码的模块化,提高代码的重用性。函数调用格式是规定函数如何被调用的语法规则...
C语言函数调用详解 C语言中的函数调用是通过函数名和参数列表来实现的。函数调用是C语言中的一种基本机制,允许我们将一段代码分割成小块,以便于代码的重用和维护。下面我们将详细解释C语言函数调用的机制和步骤。...
在递归调用中,每次函数调用都会在栈中创建一个新的帧来保存该次调用的状态,直到递归结束,调用栈会逐步回退,直至最初的调用完成。 在计算机图形学领域,漫游系统的设计和实现往往需要深入了解函数的调用过程,...
函数调用中最关键的一环就是参数传递。根据不同的应用场景,C语言支持以下几种参数传递方式: 1. **按值传递**(Pass by Value):在这种方式下,实参的值被复制给形参,因此在函数内部对形参的任何修改都不会影响...
函数调用关系图是一种图形表示法,它以节点代表函数,边则表示函数间的调用关系。这种图可以帮助我们识别函数的依赖性,理解控制流程,尤其是在大型复杂项目中,这样的可视化工具尤为重要。通过这种方式,开发者可以...
C语言函数-子函数-主函数与子函数的调用; C语言初学者
C语言函数调用栈是一种常见的编程概念,它是指在程序执行过程中,函数调用时创建的一种栈结构。这种栈结构用于存储函数的局部变量、参数和返回地址等信息。 在C语言中,每个函数调用都会在内存中创建一个新的栈帧...
第二种格式看上去和函数调用无异。但是有些程序员倾向于使用第一种格式,因为它明确指出是通过指针而非函数名来调用函数的。 三、指针的指针 指针的指针是指向指针的指针,声明格式为:类型说明符 变量名。例如: ...
使用汇编语言对C语言函数调用方法求平均数 在计算机编程中,汇编语言和C语言都是常用的编程语言。汇编语言是一种低级语言,它可以直接控制计算机硬件,具有高效、灵活和可靠的特点。但是,汇编语言的编程难度较高,...
在函数内部,静态变量保持其值在函数调用之间,而自动变量(默认情况下)每次调用函数时都会重置。 8. **变量传递方式** C语言中的函数参数传递有两种方式:值传递和引用传递(通过指针实现)。值传递会复制实参...
在C语言函数调用的教学中,还可以采取一些策略,比如先用熟悉的库函数引入函数概念,再逐步引导学生学会自定义函数,包括定义函数参数的个数和类型,以及如何在主函数中调用自定义的函数。这是因为学生对于如何...