void f(int *q)
在浑南等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站制作、网站设计 网站设计制作按需搭建网站,公司网站建设,企业网站建设,品牌网站制作,成都全网营销推广,成都外贸网站建设,浑南网站建设费用合理。
{
q=(int *)0XFFFFFFFF; //这里修改的是函数中形参q这个临时变量的值。而对实参没有影响
}
1、获得函数的地址
函数名实际上就是指针,所以可以通过强制类型转换来获取函数的地址。
int i = 0;
i = (int)main;
printf(“%d\n”,i);
这样我们就获取了main函数的地址了,其他的自定义的函数也是同样的道理啊。
2、获取变量地址
int variab = 0;
int addrvar = 0;
addrvar = (int)variab;
在变量addrvar中保存了变量variab的地址。
3、获得数组的地址
数组本身就是指针,它本身就是内存地址,和获得函数地址的方法一样啊。比如
int array[10];
int addrarr;
addrarr = (int)array;
#include stdio.h
void f()
{
}
void main()
{
printf("%u\n", f);
printf("%u\n", f);
printf("%p\n", f);
}
主函数中前两行%u表示输出无符号的十进制,而第三行%p表示输出地址,其结果是一个十六进制的数,你将其转换成十进制,你会发现与前两行结果一样。