C语言中指针变量传参


#include<stdio.h>

void f1(int a){
    a++;
    printf("a is:%d\n",a);
    
}
void f2(int *p){
    (*p)++;
    printf("*p is:%d\n",*p);
    
}
int main(){
    /*  demo1
    int a = 1;
    int* p = &a;
    printf("first:%d\n",*p);
    f2(p);
    printf("second:%d\n",*p);
    */
    
    /* demo2  */
    int b = 1;
    printf("first:%d\n",b);
    f1(b);
    printf("second:%d\n",b);
    
    
    return 1;
}



demo1结果:
first:1
*p is:2
second:2

demo2结果:
first:1
a is:2
second:1
 

 

结论:当指针变量作为参数进行传参操作时,方法内部对变量进行操作,同时

也会影响传入的指针变量的值,因为他们指向的是同一块存储空间的数据

 

可参考图:

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM