1

この部分はわかりません。グローバル変数の使用が許可されていない場合、どうすればよいですか?例:

main()
{ int z;
  function1(&z);
}

function1(int *x)
{
  function2(&x);
}

function2(int *number)
{
   ++(*number);
}
4

1 に答える 1

3

function1を呼び出すときは、ではなく、function2渡すだけです。x&x

function1(int *x)
{
  function2(x); /* not &x */
}

&xfunction2へのポインタへのポインタを渡しますが、へのポインタintのみを取るように宣言されていますint

その他の問題:z初期化する必要があり、関数には前方宣言が必要であり、上記で宣言されていますmainmainを返すように宣言し、成功するintと戻る必要があります。0また、他の回答で述べたように、他の関数にもリターン型が必要です。

void function2(int *number)
{
   ++(*number);
}

void function1(int *x)
{
  function2(x);
}

int main()
{
  int z = 0;
  function1(&z);
  return 0;
}
于 2012-07-20T06:13:44.297 に答える