C语言传址调用的正确做法

C语言传址调用的正确做法,第1张

主函数中定义的指针,经过函数调用常规情况下不会发生任何变化,因为函数在调用完之后就会自动释放函数中的局部动态变量

#include "iostream"
using namespace std;

void test(int *x);

int main(){
    int *x=new int;
    *x=1;

    cout<<"Before test:"<<*x<

 也就是如果函数内部没有static静态变量 所有值都是无法被保存下来的

只有对主函数中传进来的指针直接进行值修改才能让函数改变主函数的指针内容

#include "iostream"
using namespace std;

void test(int *x);

int main(){
    int *x=new int;
    *x=1;

    cout<<"Before test:"<<*x<

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/792811.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-05
下一篇 2022-05-05

发表评论

登录后才能评论

评论列表(0条)