【问题标题】:I need to pass the arguments of function1 to another function2 inside function1 [closed]我需要将函数 1 的参数传递给函数 1 中的另一个函数 [关闭]
【发布时间】:2016-11-24 14:43:20
【问题描述】:

具体来说,代码是这样的

main()
{
  int a; int b;
  func(&a,&b);
}

void func(int *x,int *y)
{
  func1(...);    // i need to pass x,y in func1
}

void func1(int ,int ) { ... }

参数 x,y 来自我的 main,我不知道如何将它们传递给 func1,以便在此函数的范围内修改它们

【问题讨论】:

  • 您要将指针的 传递给func1,还是传递指针本身?在这两种情况下,any beginners book 都会教你如何操作。

标签: c function arguments


【解决方案1】:

您只需将它们传递出去,但为了让 func1 能够修改并将它们传回,您必须将 func1 更改为接受指针。

您的 func1 原型必须更改为:

    void func1(int* a, int* b);

然后:

    void func(int *x,int *y) {
        func1(x, y);
    }

【讨论】:

    【解决方案2】:

    您只需发送变量的地址:

     func1(&x, &y);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-01-12
      • 2020-01-23
      • 1970-01-01
      • 1970-01-01
      • 2014-01-06
      • 2019-10-09
      • 2015-02-26
      相关资源
      最近更新 更多