码迷,mamicode.com
首页 > 编程语言 > 详细

C语言基础 变量

时间:2015-04-30 21:48:38      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:

1.基本知识    
         1.1定义:
        变量类型 变量名;
    
          int x;
         1.2赋值
        x = 100;

         1.3输出
        printf("%d", x);

        常用格式符:
        整型: %d,%i
        浮点型:%f
        字符型:%c

2.作用域和生存周期    
        
       2.1局部变量:
            2.1.1在函数(代码块)内部定义的变量(包括函数的形参)
            2.1.2作用域:  从定义变量的那一行代码开始,一直到代码块结束
            2.1.3生命周期:代码块结束将被回收
            2.1.4初始值不明

       2.2全局变量
            2.2.1在函数外面定义的变量
            2.2.2作用域:从定义变量的那一行开始,一直到文件结尾(后面所有函数共享)
            2.2.3生命周期:程序一启动就会分配存储空间,程序退出时才会被销毁
            2.2.4默认初始值是0

 1 #include <stdio.h>
 2 
 3 //a,b,c全局变量
 4 int a = 10; // 变量a初值为10
 5 int b, c = 20; // 变量b初值为0,变量c初值为20 
 6 
 7 int sum(int v1, int v2) // 函数形参,局部变量
 8 {
 9     return v1 + v2;
10 }
11 void test()
12 {
13     int i = 0; // 局部变量
14     b++;
15     i++;
16     printf("b = %d, i = %d\n", b, i);
17 }
18 
19 int main()
20 {
21     int e; // 局部变量
22     test(); // b = 1, i = 1
23     test(); // b = 2, i = 1
24     test(); // b = 3, i = 1
25 
26     e = 10;
27     {
28         {
29             int f = 30; // 局部变量
30         }
31     }
32     return 0;
33 }

3.变量的内存分析
        3.1内存寻址由大到小,优先分配内存地址比较大的字节给变量
        3.2变量越先定义,内存地址越大
        3.3取得变量的地址:&变量名
           3.4输出地址:%p
        3.5要先初始化,才能用

1 int a = 10;
2 int b = 20; 
3 int c;
4 int d;
5 printf("a的地址%p\n", &a);
6 printf("b的地址%p\n", &b);
7 printf("c的地址%p\n", &c); // 可以取得地址
8 
9 d = c + 1; // 不能用

 

C语言基础 变量

标签:

原文地址:http://www.cnblogs.com/frew/p/4469935.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!