什么都不会要死了 2024-01-09 12:44 采纳率: 100%
浏览 11
已结题

C语言main()函数先后调用顺序

C语言mian()函数内外的代码调用问题,例如

int x = 5, y = 7;
void swap()
{
    int z;
    z = x;
    x = y;
    y = z;
} 
int main()
{
    int x = 3, y = 8;
    swap();
    printf("%d,%d\n",x, y);
    return 0;
}

中的x,y该如何输出

  • 写回答

5条回答 默认 最新

  • 爱笑的笑笑 2024-01-09 13:33
    关注

    输出结果3,8
    main函数调用swap函数,没有传递形参,系统默认从全局变量里找x和y(此时如果没有定义全局变量,则会报错)
    所以swap函数内部转化的也是全局变量x,y的值。
    main函数printf里,输出x,y,局部变量优先,所以输出的是main函数中定义的x,y,即3,8

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 1月17日
  • 已采纳回答 1月9日
  • 创建了问题 1月9日