为什么处理指针的函数需要在c(为什么函数指针只能指向void?)
浏览量:3781
时间:2023-03-09 21:47:34
作者:采采
在C 中函数指针有什么作用呢,为什么不直接调用函数而要使用函数指针?
,唉!我还没有 t摸C好几年了,这个问题激起很多感触!看起来,回答问题的人全是程的专家。告诉我我还记得什么。如果我错了,请原谅我。毕竟,我还没有 几年不读书。
指针是C语言中最难学的概念,也成了别有用心的人反对C语言的靶子。
其实指针是一个特殊的变量,它指向存储其他变量的地址,在调用函数时作为索引,将函数名作为函数本身。
指针占用内存很少,就像C语言中的轻骑兵。
在继承和继承自定义类时,使用虚函数的指针可以根据上下文自动判断和改变指针所指向的父类或子类对象。
程序调用完成后应及时撤销指针,避免内存泄漏。
函数指针变量存储在内存什么区?
函数指针变量存储在静态数据区。
C语言的变量值是通过对变量的内存地址进行寻址得到的,但对于编译后的程序来说,变量的地址是一个确定的值,不能改变。
这是因为编译器在编译程序时已经通过语法分析计算出了指针变量的地址值,所以指针变量实际上并不需要存储在内存堆栈或数据段中。而普通变量在数据段。
为什么函数指针只能指向void?
因为void*函数指针可以指向任何函数。
因此,void*指针是一个 "通用指针。
空型是一种特殊的类型,通常称为 "空类型 "。C语言中没有void类型的变量,所以当遇到void *指针时,编译器不会 我根本不知道如何解释下一个内存,甚至编译器也不知道。;我不知道有多少记忆属于它。
指针函数的用法?指针是C语言中的一个重要概念及其特点,也是C语言中较难掌握的部分。指针也是内存地址。指针变量是用来存储内存地址的变量。不同类型的指针变量占用相同长度的存储单元,而存储数据的变量由于数据类型不同,占用不同长度的存储空间。使用指针,不仅可以操作数据本身,还可以操作存储数据的变量地址。
指针的注意事项:
1.你可以 不要用指针指向数字。指针只能指向变量的地址。
比如给指针p赋值500,就会出现运算错误;我们要定义一个整型变量A,给A赋值500,然后用指针指向变量A的地址,所以需要用 amp 地址运算符。
两个都可以。
2.改变形式参数并不意味着改变真实参数。
您不能试图通过更改finger参数的值来更改pointer参数的值。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。