gpt4 book ai didi

c++ - 这个例子可以用指针而不是全局变量来完成吗?

转载 作者:塔克拉玛干 更新时间:2023-11-03 08:14:26 24 4
gpt4 key购买 nike

这是我遇到的问题的简化示例:

#include <stdio.h>
#include <stdlib.h>

void f2(int** a) {
printf("a: %i\n", **a);
}

void f1(int* a) {
f2(&a);
}

int main() {
int a = 3;
f1(&a); // prints "a: 3"

f2(???);

return 0;
}

问题是我希望能够在 main()f1() 中使用 f2()

不使用全局变量能做到吗?

最佳答案

你需要传递一个指向指针的指针,所以你需要在main()中创建一个指针,这样你就可以获取它的地址:

int main() 
{
int a = 3;
int* aptr = &a;
f2(&aptr);

return 0;
}

关于c++ - 这个例子可以用指针而不是全局变量来完成吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3029923/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com