A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王海江1 中级黑马   /  2014-6-8 21:14  /  1001 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 王海江1 于 2014-6-11 21:51 编辑

#include <stdio.h>

int main()
{
int a=0;

{
a=10;
printf("%d\n",a)
int a=12;
printf("%d\n",a)
{
a=30;
printf("%d\n",a)
int a=40;
printf("%d\n",a)
a=50;
printf("%d\n",a)
}
printf("%d\n",a)
a=20;
printf("%d\n",a)
}

printf("%d\n",a)
a=70;


printf("%d\n",a)

}

3 个回复

倒序浏览
本帖最后由 张家伟2014 于 2014-6-8 23:16 编辑
  1. #include <stdio.h>

  2. int main()
  3. {
  4.     int a = 0; // 在当前内存块(main)中定义一个变量a(第1个a),值为0.
  5.     {
  6.         //在上一级内存块(main)中开辟出一块内存(第1块内存).
  7.         a = 10; // 先在当前内存块(第1块内存)中寻找a,没找到,再去上一级内存块(main)中寻找a,找到后将10赋值给a(第1个a).
  8.         printf("%d\n",a); // 先在当前内存块(第1块内存)中寻找a,没找到,再去上一级内存块(main)中寻找a,找到后打印a(第1个a),结果:10.
  9.         int a = 12; // 在当前内存块(第1块内存)中定义一个变量a(第2个a),值为12.
  10.         printf("%d\n",a); // 先在当前内存块(第1块内存)中寻找a,找到后打印a(第2个a),结果:12.
  11.         {
  12.             //在上一级内存块(第1块内存)中开辟出一块内存(第2块内存).
  13.             a = 30; // 先在当前内存块(第2块内存)中寻找a,没找到,再去上一级内存块(第1块内存)中寻找a,找到后将30赋值给a(第2个a).
  14.             printf("%d\n",a); // 先在当前内存块(第2块内存)中寻找a,没找到,再去上一级内存块(第1块内存)中寻找a,找到后打印a(第2个a),结果:30.
  15.             int a = 40; // 在当前内存块(第2块内存)中定义一个变量a(第3个a),值为40.
  16.             printf("%d\n",a); // 先在当前内存块(第2块内存)中寻找a,找到后打印a(第3个a),结果:40.
  17.             a = 50; // 先在当前内存块(第2块内存)中寻找a,找到后将50赋值给a(第3个a).
  18.             printf("%d\n",a); // 先在当前内存块(第2块内存)中寻找a,找到后打印a(第3个a),结果:50.
  19.         }
  20.         //系统回收了上一级内存块(第2块内存),第3个a也不存在了.
  21.         printf("%d\n",a); // 先在当前内存块(第1块内存)中寻找a,找到后打印a(第2个a),结果:30.
  22.         a = 20; // 先在当前内存块(第1块内存)中寻找a,找到后将20赋值给a(第2个a).
  23.         printf("%d\n",a); // 先在当前内存块(第1块内存)中寻找a,找到后打印a(第2个a),结果:20.
  24.     }
  25.     //系统回收了上一级内存块(第1块内存),第2个a也不存在了.
  26.     printf("%d\n",a); // 先在当前内存块(main)中寻找a,找到后打印a(第1个a),结果:10.
  27.     a = 70; // 先在当前内存块(main)中寻找a,找到后将20赋值给a(第1个a).
  28.     printf("%d\n",a); // 先在当前内存块(main)中寻找a,找到后打印a(第1个a),结果:70.
  29.     return 0;
  30. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
傘が咲く + 1

查看全部评分

回复 使用道具 举报
真得好详细,顶一个
回复 使用道具 举报
分析的挺到位,谢谢
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马