结构体,枚举,常量,与变量

来源:互联网 发布:金融一体机安装软件 编辑:程序博客网 时间:2024/06/18 05:12

1. 什么是标识符

     标识符就是在程序中自定义的一些符号的名称, 给要用的函数,数据起名字,方便区分调用.

2. 由26个英文字母的大小写,10个阿拉伯数字0-9,下划线_组成.


3. 有什么特点?

     不能用数字开头,严格区分大小写,不能与关键字同名,取名要有意义.便于识别.    //驼峰命名规则需记住

4. 静态数据和动态数据的区别.

    静态数据是数据被保持之后,只要设备没有坏,在断电的情况下数据都是存在的.

    动态数据:数据加载到内存中,一旦断电,数据就不存在了.


5.什么是常量

    是一些固定的数据

     分为四大类型: 整数,字符型, 浮点型,字符串型   


6 什么是变量

   变量来源与数学,是计算机语言中能存储计算结构或能表示抽象概念


7.有什么用

   用来表示一个不需要经常改变或者不确定的数据.

8.变量的作用域在对应的代码块中(作用域可以理解为距离变量最近的两个成对的花括号)

For example :

#include <stdio.h>

int add() {

   int num;     // num的作用域范围在函数结束的花括号中

    return 0;


}

int  main ( ) {

   int num;  // 这个num的作用域在main函数中

   num=2;

    int a=100;

    return 0;


}

  

7. 全局变量是什么

    在所有函数外部定义的变量,称为全局变量.

8. 有什么特点

    a. 生命周期跟随程序,程序启动创建,程序退出才会销毁.

    b.作用域是其所在位置之下所有函数,都可以共享并改变

    c. 变量的使用遵循就近原则

    d. 如果没有初始化,默认值是0;


9. 结构体是什么

    它是一种数据类型,是构造类型,里面可以存储不同数据类型的数据    // 常用数据类型

10.有什么用

    可以封装不同数据类型到一个结构中,方便使用

    typedf struct Person {

     char *name;

     int age;

    int height;

}per;


11. 什么是结构体数组

     它是数组,只不过数组里每一个元素是结构体类型,可以存储多个有关联的结构体.

12. 定义及初始化赋值:struct 结构体类型 数组名[长度]={结构体1,结构体2};

      struct Person ={char *name ; int age ;};

  1. int main(){
  2.  
  3.       struct Person{
  4.        
  5.        char *name;
  6.        int age;
  7.    };
  8.    
  9.    struct Person per= {"itheima",2};
  10.    struct Person per1={"itcast",3};
  11.    struct Person arr[2]={"per,per1"};
  12.    printf("%s---%d\n",arr[1].name,arr[1].age);
  13.    
  14.    
  15.    return 0;
  16. }


13. 什么是结构体指针

      它是指针,不是指针类型而是结构体指针类型.

14.怎么用?

定义初始化赋值: struct 结构体类型 * 指针名=&结构体变量

For example: struct Person {char *name; int age;}; struct Person *p=&per;

取值 :(*指针名).结构体元素名;   指针名->结构体元素名;

赋值:(*指针名). 结构体元素名=新值;  指针名->结构体元素名=新值

For example: (*p).name, (*p).age; 或 p->age, p->name;

结构体分配内存空间遵循两个原则,对齐原则和对齐算法(增加CPU寻址效率)


15. 枚举是什么

      是一种数据类型,称为枚举类型,是构造类型的一种,里面存的都是有别名的整型常量.

16.有什么用

     可以把多个整型常量以别名的形式封装成一个整体,便于别的变量识别并取值使用.

  1. int main(){
  2.    
  3.    enum day{
  4.        
  5.        MORNING,   // 0
  6.        AFTERNOON,// 1
  7.        NIGHT,     // 2
  8.    };
  9.    
  10.    enumDay daystatus=MORNING;
  11.    // 取值:变量名=枚举元素名
  12.    daystatus=MORNING;
  13.    printf("daystatus=%d\n",daystatus);
  14.    daystatus=AFTERNOON;
  15.    printf("daystatus=%d\n",daystatus);
  16.    daystatus=NIGHT;
  17.    
  18.    // 用普通变量//
  19.    int status=0;// 表示早上
  20.    int status=1;//  表示中午
  21.    int status=2;//  表示晚上
  22.    
  23.    printf("daystatus=%d\n",daystatus);
  24.    
  25.    int a;    // 0表示关  1表示开,没有其他的取值
  26.    a=1;
  27.    a=0;
  28.    enumStatus{
  29.        CLOSE,
  30.        OPEN,
  31.        
  32.    }nowStatus=open;
  33.    nowStatus=OPEN;
  34.    nowStatus=CLOSE;
  35.    printf("a=%d--nowStatus=%d\n",a,nowStatus);
  36.    
  37. }




0 0
原创粉丝点击