如图,ace已经在main函数之前定义,单纯输出p_ad可以正常输出ace的地址;但是,对p_ad解引用或企图通过指针修改ace的值得时候就会抛出异常。
问题的解决方法是需要在main函数中声明fun函数,然后在添加extern int ace声明变量
你在fun里又写了int ace;你后面访问的不是全局变量的ace,.而是这个局部变量ace最后你试图把局部变量返回,局部变量在堆栈上,函数退出,地址就无效了