我不明白这部分。如果不允许使用全局变量,我该怎么办?例子:
main()
{ int z;
function1(&z);
}
function1(int *x)
{
function2(&x);
}
function2(int *number)
{
++(*number);
}
我不明白这部分。如果不允许使用全局变量,我该怎么办?例子:
main()
{ int z;
function1(&z);
}
function1(int *x)
{
function2(&x);
}
function2(int *number)
{
++(*number);
}
function1
打电话的时候function2
,直接传进去x
,不行&x
。
function1(int *x)
{
function2(x); /* not &x */
}
&x
将传递function2
一个指向 an 的指针int
,但它被声明为只接受一个指向 an 的指针int
。
其他问题:z
应该被初始化,并且函数应该有前向声明,在上面声明main
。main
应该声明返回一个int
,并返回0
成功。正如另一个答案中所述,您的其他函数也需要返回类型。
void function2(int *number)
{
++(*number);
}
void function1(int *x)
{
function2(x);
}
int main()
{
int z = 0;
function1(&z);
return 0;
}