一直以来,我是采用Java编程的,在Java中函数作为另一函数的参数很简单,只需要将作为参数的函数所属的对象作为参数传给相关的函数即可,举个例子,有对象
class Temp1{
private int a;
private int b;
public void function1(){
......
}
}
现在需要将function1 传给function2.则可采用如下写法:
class Temp2{
private int c;
private int d;
public void function2(Temp1 temp ){
......
}
}
但是c语言却不同,个人认为c语言中指针是一个很核心的概念,函数的传递也是通过指针来进行的。
现在有个一个函数fun1(int a,int b),另一个函数fun2需要以fun1为参数,则采用如下写法:
int fun2( int (*pfun1)(int,int),int c,int d ){
......
}
fun2的参数有三个,一个是指向函数fun1(int a,int b)的指针,实现对该函数的调用,另外两个是int型参数。为例书写的简便,可以使用typedef定义函数指针类型,
typedef int (*pfun1)(int,int)
于是fun2的定义变为
int fun2(pfun1 p.int c,int d){
......
}
分享到:
相关推荐
在C语言中,数组是一种非常重要的数据结构,用于存储同类型的数据集合。...总结起来,C语言中数组在函数中的使用主要包括作为参数传递和通过返回指针来间接返回数组。理解这些概念对于编写高效的C语言程序至关重要。
C语言标准函数库是C语言中提供的一组预定义的函数,用于实现各种常见的操作,如输入输出、数学运算、字符串处理、时间日期处理等。这些函数库是C语言的基础组件,掌握这些函数库的使用是C语言编程的基础。 在C语言...
C语言中二维数组作为函数参数来传递的三种方法 在C语言中,二维数组作为函数参数来传递是非常常见的操作。但是,如何正确地传递二维数组作为函数参数却是许多初学者和开发者经常混淆的地方。今天,我们将详细介绍...
首先,C语言作为一种高效、灵活的编程语言,它提供了大量的内置函数,这些函数可以分成不同的类别,如标准输入输出函数、数学函数、字符串处理函数、内存管理函数、时间日期函数等。 1. 标准输入输出函数:这类函数...
C语言函数库大全C语言函数库大全C语言函数库大全C语言函数库大全C语言函数库大全C语言函数库大全C语言函数库大全C语言函数库大全C语言函数库大全C语言函数库大全C语言函数库大全C语言函数库大全C语言函数库大全C语言...
本速查手册《C语言标准函数库速查手册.chm》是一个实用的参考资料,它详细列举了C标准库中的各种函数,帮助开发者快速查找和理解这些函数的用法。手册可能包括以下内容: 1. **输入/输出(I/O)**:头文件中的函数...
main函数中调用GetDate函数,获取返回的地址值,并将其输出。 二、函数指针 函数指针是指向函数的指针,包含了函数的地址,可以通过它来调用函数。其声明格式为:类型说明符 (*函数名)(参数)。例如: ```c void ...
这些函数在处理像`printf()`和`scanf()`这样的格式化输入/输出时非常有用,以及在`exec*()`系列函数中用于在程序中执行外部文件。尽管`main()`函数的`argc`和`argv`参数看起来类似可变参数,但它们实际上是固定的,...
### 关于C语言中函数调用和参数传递机制的探讨 在C语言中,函数是程序的基本构建单元之一,它们不仅能够实现代码的重用,还能通过参数传递机制实现数据的有效交互。本文将深入探讨C语言中的函数调用机制以及参数...
在`printArray`函数中,虽然参数看起来像`int[]`,但实际上它等同于`int*`,表示一个指向整数的指针。因此,通过指针遍历数组元素即可。 总结,理解C语言的函数定义、声明和调用方法是编写高效程序的关键。函数...
函数在C语言中是一段可执行的代码块,可以接收输入(参数)并返回结果。函数的定义包括函数名、返回类型和参数列表。例如: ```c int add(int a, int b) { return a + b; } ``` 这里,`add`是函数名,`int`是...
结合汇编讲解了c语言汇中函数参数是如何传递,如何调用的
本资源“C语言函数大全”包含了丰富的函数例题,旨在帮助学习者深入理解和熟练掌握C语言中的函数用法。下面我们将详细讨论C语言中的函数概念、类型以及其在实际编程中的应用。 首先,C语言中的函数可以分为内置...
2. 函数指针:可以将函数地址赋值给指针变量,实现函数作为参数传递或返回值的功能,常用于回调函数和高阶函数。 3. 递归函数:函数内部调用自身,解决复杂问题,但需谨慎使用以避免无限递归。 4. 无返回值函数:用`...
其中,函数作为C语言的核心组成部分,起着非常关键的作用。本文将对C语言中的函数的定义、调用、声明等知识点进行详细介绍。 首先,函数定义是实现程序模块化的重要手段。在C语言中,函数定义通常由返回类型、函数...
C语言函数是编程中至关重要的...以上是针对C语言函数选择练习题的详细解析,涵盖了局部变量、全局变量、形参、函数返回类型、数组作为参数以及变量作用域等多个关键知识点。理解这些概念对于编写和调试C程序至关重要。
由于数组名表示的是该数组在存储单元的首地址,所以数组名作为参数进行的是地址传递,即使实参数组名和形参数组名不同,但所占用的都是同一段存储空间,因此形参数组中的数组元素的值发生变化,实参数组中的数组元素...
C语言函数的应用例子 C语言函数是程序设计中的一种基本结构单元,它可以实现特定的功能,并且可以重复使用。下面我们将通过几个例子来了解C语言函数的应用。 1. 定义一个函数,求 X 的 n 次方 在这个例子中,我们...
在这个“C语言函数(几乎所有的c语言函数)范例教程”中,你将深入学习C语言的核心部分——函数。函数是C语言中组织代码和实现模块化程序设计的关键元素。 1. **函数定义与调用**: C语言中的函数可以被看作是执行...
在C语言中,数组是不能直接作为参数传递给函数的,这是由于数组名在传递给函数时会退化成指向其第一个元素的指针。因此,当我们希望在函数内操作数组时,需要将数组的指针作为参数传递给函数。这样,函数就可以使用...