您的位置:首页 > 其它

第十五周项目二阅读程序(2)

2014-12-04 15:14 239 查看
问题及代码:

#include <iostream>
using namespace std;
int *p;
void pp(int a, int *b);
int main()
{
    int a=1, b=2, c=3;
    p=&b;
    pp(a+c, &b);
    cout<<"(2)"<<a<<','<<b<<','<<*p<<endl;
    return 0;
}
void pp(int a, int  *b)
{
    int c=4;
    *p=*b+c;
    a=*p-c;
    cout<<"(1)"<<a<<','<<*b<<','<<*p<<endl;
}


运行结果:





知识点总结:

注意*p为全局变量,在main函数中定义p为b的地址,在整个程序中p都是,所以在自定义函数中改变*p的值之后b的值也随之改变,于此不同的是a是部分变量,所以在程序结果中输出的两个a的结果不同

学习心得:

读程序要认真,分清全局变量与部分变量,如果是部分变量的话那么在不同的变量中他所代表的值或者是意义都是不同的,这个程序看了好久没有思路,可是经过单步调试可以很清晰的看出计算机运行的方式,以后要注意!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: