c指针-函数参数深入探索(请教)
实在是被C的指针搞糊涂了.以下是代码和不清楚的地方:
---------------------------------源代码--------------------------------------------
main(){
void func1(int);
void func2(int *);
void func3(int*);
int a=10,*p;
int* pp;
printf("\nin main():");
printf("\na=%d,&a=%d,*&a=%d,*(&a)=%d\n",a,&a,*&a,*(&a));
p=&a;
printf("\np=%d,&p=%d,*p=%d\n",p,&p,*p);
pp=a;
printf("\npp=%d,&pp=%d,*pp=%d\n",pp,&pp,*pp);
printf("\nin func1():");
func1(a);
printf("\nin func2():");
func2(p);
printf("\nin func3():");
func3(pp);
}
void func1(int a){
printf("\na=%d,&a=%d,*&a=%d,*(&a)=%d\n",a,&a,*&a,*(&a));
}
void func2(int *p){
printf("\np=%d,&p=%d,*p=%d\n",p,&p,*p);
}
void func3(int* pp){
printf("\npp=%d,&pp=%d,*pp=%d\n",pp,&pp,*pp);
}
---------------------------------执行结果------------------------------------------
in main():
a=10,&a=4048,*&a=26405,*(&a)=10
p=4048,&p=26405,*p=4050
pp=10,&pp=0,*pp=4054
in func1():
a=10,&a=4046,*&a=26405,*(&a)=10
in func2():
p=4048,&p=26405,*p=4044
in func3():
pp=10,&pp=0,*pp=4044
标为红色的字样处是不清楚的地方,这些数据该如何理解与解释?
---------------------------------源代码--------------------------------------------
main(){
void func1(int);
void func2(int *);
void func3(int*);
int a=10,*p;
int* pp;
printf("\nin main():");
printf("\na=%d,&a=%d,*&a=%d,*(&a)=%d\n",a,&a,*&a,*(&a));
p=&a;
printf("\np=%d,&p=%d,*p=%d\n",p,&p,*p);
pp=a;
printf("\npp=%d,&pp=%d,*pp=%d\n",pp,&pp,*pp);
printf("\nin func1():");
func1(a);
printf("\nin func2():");
func2(p);
printf("\nin func3():");
func3(pp);
}
void func1(int a){
printf("\na=%d,&a=%d,*&a=%d,*(&a)=%d\n",a,&a,*&a,*(&a));
}
void func2(int *p){
printf("\np=%d,&p=%d,*p=%d\n",p,&p,*p);
}
void func3(int* pp){
printf("\npp=%d,&pp=%d,*pp=%d\n",pp,&pp,*pp);
}
---------------------------------执行结果------------------------------------------
in main():
a=10,&a=4048,*&a=26405,*(&a)=10
p=4048,&p=26405,*p=4050
pp=10,&pp=0,*pp=4054
in func1():
a=10,&a=4046,*&a=26405,*(&a)=10
in func2():
p=4048,&p=26405,*p=4044
in func3():
pp=10,&pp=0,*pp=4044
标为红色的字样处是不清楚的地方,这些数据该如何理解与解释?
...全文
相关推荐
C语言void及void指针深层探索.doc
C语言void及void指针深层探索.doc
5、 探索C语言中的指针:从基础到高级
本文深入探讨了C语言中的指针,从基础概念到高级应用,包括指针与数组、结构体的结合,动态内存管理,以及如何利用指针优化代码性能。同时,提供了实际编程中的技巧和注意事项,帮助开发者编写高效、可靠的代码。
C指针的相关书籍很全面的
c指针的相关详细的讲解很全面 详细的讲解了指针的使用以及重点难点
CC++数组名与指针区别深入探索
CC++数组名与指针区别深入探索 CC++数组名与指针区别深入探索
C语言指针导学——指针进阶读物
这个电子书是我自己写的,对于刚刚踏入C/C++程序设计世界以及想要提高的朋友会很有帮助,最主要的是,这本书将会使你对指针有一个全新的认识和提高!


