C语言函数调用时参数压栈的顺序以及函数指针的功用

C语言函数调用时参数压栈的顺序以及函数指针的作用

1、函数参数压栈的顺序

很多人都知道压栈的顺序时从右向左进行压栈,具体的可观测的结果如下程序运行。有没有人知道C语言为什么要进行这样的参数压栈顺序的选择啊?求指教啊……


运行结果如下图所示:

C语言函数调用时参数压栈的顺序以及函数指针的功用

C语言函数调用时参数压栈的顺序以及函数指针的功用



2、函数指针的使用

函数指针,顾名思义,就是指向一个函数的指针,通常来说,函数名就是一个函数指针。

下面我来展示一个程序来表示函数指针的使用,理解函数指针的用法和作用。该函数的功能就是输入命令实现加减乘除,但是是用函数指针的方式来实现,具体见代码。


程序运行结果:

C语言函数调用时参数压栈的顺序以及函数指针的功用


函数指针最大的用处便是用于回调函数,通过定义一类函数类型的函数指针,然后将该类型的函数指针作为另外一个函数的参数,在这个函数内使用传进去的函数指针调用该指针指向的函数,实现相应的功能。



C语言函数调用时参数压栈的顺序以及函数指针的功用

C语言函数调用时参数压栈的顺序以及函数指针的功用

2楼liutengteng1303小时前
应该是图片格式不对,没显示,加油哈。
1楼han_yankun20096小时前
图形有些没显示