第12周项目一 程序阅读题(2)

问题描述:

  阅读下列程序,写出程序的运行结果。上机时运行程序,与你的预期进行对
照、理解。如果对运行结果和其背后的原理仍不理解,请通过单步执行的手段跟踪理解。

(2)阅读下面两个有全局变量的程序。

代码:

#include <iostream>
using namespace std;
int  a=3, b=5;
int max(int a, int b)
{
    int c;
    c=a>b? a:b;
    return  c;
}
int main()
{
    int a=8; //若无这一句,又将如何?
    cout<<max(a,b)<<endl;
    return 0;
}

预计运行结果是:    8      5       
实际运行结果是:

  

代码: 

#include <iostream>
using namespace std;
void cude();
int main()
{
    extern int x;//去掉extern及本行全删除会怎样?
    x=5; //去掉这一句呢?
    cude();
    cout<<x<<endl;
    return 0;
}
int x=10;
void cude()
{
    x=x*x*x;
}
预计运行结果是: 125  125  125  1000
实际运行结果是:

知识点总结与学习心得:

  全局变量就是做用于整个全局变量声明位置后函数,而extern是对后面声明的全局变量的调用。然而像第二种情况,函数里的x没有extern的话,那么这个x与后面的x没联系。so第二个是输出5。至于第3个是为声明x变量放了一个语法错误,所以跑不出来。通过这次体验我觉得全局变量的起名和调用还需我们多多细心去推敲,以免南辕北辙!

  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值