【问题标题】:Passing pointer from main to another function that passes the same pointer to another将指针从 main 传递给另一个函数,该函数将相同的指针传递给另一个函数
【发布时间】:2015-05-09 16:55:17
【问题描述】:

我的问题很简单。没有结构,没有对象。没有。 我想将一个变量从 main 传递给 void func1,然后 func1 将它传递给 void func2 并保存更改。

这是一些编码,我想是正确的。

int main (int argc, char *argv[]) {
int a = 2, b = 3, av, sum;

sumandav(a, b, &sum, &av);

printf("Average: %d\nSum: %d\n", av, sum);
return(0);

}

void sumandav(int a, int b, int *sum, int *av) {
*sum = a + b;
average(&sum, &av);
}

void average(int *sum, int *av) {
*av = (*sum)/2;
}

感谢您的宝贵时间。

【问题讨论】:

    标签: c function pointers


    【解决方案1】:

    将平均调用替换为以下内容:

    average(sum, av);
    

    您传递的是指针本身,而不是指向指针的指针。

    【讨论】:

      猜你喜欢
      • 2018-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多