任何类型指针指向的变量的类型相同才能进行比较,为什么任何类型的指针都可以和NULL进行比较?#define NULL (void *) 0还有就是函数指针如何使用啊?#includeint fun(int a){printf("%d\n",a*a);return 0;}int main(

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/18 09:22:24
任何类型指针指向的变量的类型相同才能进行比较,为什么任何类型的指针都可以和NULL进行比较?#define NULL (void *) 0还有就是函数指针如何使用啊?#includeint fun(int a){printf(

任何类型指针指向的变量的类型相同才能进行比较,为什么任何类型的指针都可以和NULL进行比较?#define NULL (void *) 0还有就是函数指针如何使用啊?#includeint fun(int a){printf("%d\n",a*a);return 0;}int main(
任何类型指针指向的变量的类型相同才能进行比较,为什么任何类型的指针都可以和NULL进行比较?
#define NULL (void *) 0
还有就是函数指针如何使用啊?
#include
int fun(int a)
{
printf("%d\n",a*a);
return 0;
}
int main()
{
int (*p)(int);
p = fun;
p(5);
fun(5);
(*fun)(5);
(&fun)(5);
(*p)(5);
getch();
return 0;
}
结果是什么?重要的是原因

任何类型指针指向的变量的类型相同才能进行比较,为什么任何类型的指针都可以和NULL进行比较?#define NULL (void *) 0还有就是函数指针如何使用啊?#includeint fun(int a){printf("%d\n",a*a);return 0;}int main(
#define NULL (void *) 0
因为NULL是(void*)类型,而任何指针都可以(显性或隐性地)转化成(void*),这使得比较成为可能.
int (*p)(int); //函数指针,可以用来指向任何一个返回int,带一个int类型参数的函数
p = fun; //指向fun这个函数
p(5); //等同于fun(5),打印25
fun(5);//打印25
(*fun)(5);//打印25
(&fun)(5);//&fun是p,等同于p(5),还是打印25
(*p)(5); //打印25
这里的要点在于:p(5)和(*p)(5),fun(5)和(fun*)(5)是一回事,这是C标准规定的
另外,fun本身也是一个函数指针.
记住:任何函数名,本身也是个函数指针.我们对函数的调用就是通过函数指针来实现的.

任何类型指针指向的变量的类型相同才能进行比较,为什么任何类型的指针都可以和NULL进行比较?#define NULL (void *) 0还有就是函数指针如何使用啊?#includeint fun(int a){printf(%d ,a*a);return 0;}int main( C语言.指针变量的类型符号一定与它所指向的变量的类型符号相同吗? 只有同一类型变量的地址才能存放在指向该类型变量的指针变量之中.这句话是对是错? 指针的类型和他指向变量的类型完全相同是什么意思,指针(变量)不是只是整型吗 指向void类型的指针可以存放指向任何类型的指针,但不能引用其自身是什么意思 对于类型相同的两个指针变量之间不能进行运算的是A 对于类型相同的两个指针变量之间,不能进行的运算是符号是? 定义指针变量时必须说明其() ,以确定该指针变量所指向的变量的类型. 两个相同类型的指针变量能不能相加,为什么? 指针的数据类型为什么要跟所指向的数据的类型一致,不是说所有的指针变量占用的内存大小是相同的吗? 关于指针,下列说法错误的是?1.指针根据其所指向变量的类型的不同,其所占用内存大小也不同2.指针中存放的实际上是内存单元的地址3.可以在指针定义的同时对其进行初始化4.相同类型的指 一个指针class类型,它是指向class类的成员变量还是函数还是数据? 指针变量与其他类型变量的区别 (1) 定义变量fPtr为指向double类型的指针.(2) 把已定义变量x1(初值为5.0)的地址赋给指针变量fPtr.(1) 定义变量fPtr为指向double类型的指针.(2) 把已定义变量x1(初值为5.0)的地址赋给指针变 两个相同类型的指针变量可以做相加减运算吗? 指向对象的常指针和指向常对象的指针变量相同与区别? c语言,为什么选b,14.下列关于指针定义的描述,_____b______是错误的.A.指针是一种变量,该变量用来存放某个变量的地址值的.B.指针变量的类型与它所指向的变量类型一致.C.指针变量的命名 c语言和 下列关于指针定义的描述,_是错误的下列关于指针定义的描述,()是错误的A.指针是一种变量,该变量用来存放某个变量的地址值的.B.指针变量的类型与它所指向的变量类型一致.C.指