1.指针与函数返回值
#include<stdio.h>
int * add(int a, int b)
{
static int c;//静态变量的初始化,只能使用常量或常量表达式进行初始化
c = a + b;
return &c;
}
void main(void)
{
int *p;
p = add(2, 3);
}
2.指针与函数参数列表
按值传递:将实参的值copy一份传递给形参;在被调函数中,对形参的操作不会引起实参的变化。
按地址传递:将地址以实参的形式传递给形参;在被调函数中,通过对地址的操作将会引起实参的变化。
3.函数与指针
指向函数的指针
函数名称本就是一个指针
int (*p_func)(int)
如上,是一个指针函数的声明,第一个int是函数的返回值;通过括号的优先级指定函数指针;第二个int是参数列表
注意:函数的声明中,参数列表可以不用指定形参名,只用指定参数类型就OK。
函数指针的实质:在内存中通过指针中的地址寻找可执行的二进制代码指令
4.