C语言关键字

2.1 关键字

2.1.1 数据类型相关的关键字
  • 用于定义变量或者类型

  • 类型 变量名;

  • charshortintlongfloatdoublestructunionenumsignedunsignedvoid
    
    1. char 字符类型 ,用char定义的变量是字符类型变量,占1个字节

      char ch=‘a’; =为赋值

      char ch1 = '1';  正确的
      char ch2 = '1233'; 错误的
      
    2. short 短整型,使用short 定义的变量是短整型变量,占2个字节

      short int a = 11;  // 范围: -32768 ~ 32767
      
    3. int 整型,用int定义的变量是整型变量,在32位系统下占4个字节,在16平台下占2个字节

      int a = 44;  // 范围: -20亿 ~ 20亿
      
    4. long 长整型,用 long 定义的变量是长整型的,在32位系统下占4个字节

      long int a = 66;
      
    5. float 单浮点型(实数),用float定义的变量是单浮点型的实数,占4个字节

      float b = 3.8f;
      
    6. double 双浮点型(实数),用double定义的变量是双浮点型的实数,占8个字节

      double b = 3.8;
      
    7. struct 这个关键字是与结构体类型相关的关键字,可以用它来定义结构体类型,以后结构体再写

    8. union 这个关键字是与共同体(联合体)相关的关键字,以后再讲

    9. enum 与枚举类型相关的关键字 以后讲

    10. signed 有符号(正负)的意思

      在定义 char、整型(short、int、long)数据的时候用signed修饰,代表咱们定义的数据是由符号的,可以表存正数,也可以保存负数

      singned int a = 10;
      singend int b = -6;
      

      注意: 默认情况下 signed 可以省略 即 int a = -10; //默认a就是有符号类型的数据

    11. unsigned 无符号的意思

      unsigned int a = 101;
      unsigned int b = -101;  //错误
      
      • 扩展:内存存储

      • char ch = ‘a’; // 占1个字节,存储的是97

      • char a = 'a';
        char b = 97;  //这两个是相同的
        
    12. void 空类型的关键字

      char、int、float 都可以定义变量

      void 不能定义变量,没有void类型的变量

      void 是用来修饰函数的参数或者返回值,代表函数没有参数或者返回值

      void fun(void)
      {
      }
      
      • 代表fun函数没有返回值,fun函数没有参数
2.1.2存储相关关键字

register、static、const、auto、extern

  1. register 是 寄存器的意思,用register修饰的变量是寄存器变量.

    即: 在编译的时候告诉我们这个变量是寄存器变量, **尽量**将其存储空间分配在寄存器中.

    注意:

    1. 定义的变量不一定真的放在寄存器中.

    2. CPU取数据的时候取寄存器中拿数据比去内存中拿数据要快.

    3. 因为寄存器比较宝贵,所以不能定义寄存器数组.

    4. register 只能修饰 字符型及整型的,不能修饰浮点型.

      register char ch;
      register short int b;
      register int c;
      register float d; //错误的
      
    5. 因为register修饰的变量可能存放在寄存器中不存放在内存中,所以不能对寄存器变量取地址. 因为只有存放在内存中的数据才有地址.

      register int a;
      int *p;
      p=&a;  //错误的  a可能没有地址
      
  2. static 是静态的意思

    static 可以修饰全局变量、局部变量、函数

    这个以后讲

  3. const 是常量的意思

    用 const 修饰的变量是只读,不能修改

  4. auto int a; 和 int a 是等价的,auto关键字 现在基本上不用

  5. extern 是外部的意思,一般用于函数和全局变量的声明,这个在后面的课程中会用到

2.1.3控制语句相关的关键字
if、else、break、continue、for、while、do、switch、

case、goto、default
2.1.4其他关键字

sizeof、typedef、volatile

  1. sizeof 用来测变量、数组的占用存储空间的大小(字节数)

    int a = 10;
    int num;
    num = sizeof(a);
    
  2. typedef 重命名相关的关键字

    #include<stdio.h>
    // 把 short int 重命名为 INT16
    typedef short int INT16;
    int main()
    {
    	short int b = 101;
        // 使用 INT16 声明
    	INT16 c = 111;
    	printf("b=%d\n",b);
    	printf("c=%d\n",c);
    	
    	return 0;
     } 
    
    • typedef 原类型名 自定义类型名
  3. volatile 易改变的意思

    用volatile定义的变量,是易改变的,即告诉CPU每次用 volatile变量的时候,重新去内从中取保证的是最新的值,而不是寄存器中的备份。

    volatile 关键字现在很少适用

    volatile int a = 10;
    

    扩展知识: 命名规则.

    • 在C语言中给变量命名和函数起名的时候,由字母、数字、下划线构成

    • 必须以字母或者下划线开头

    • Linux 风格 stu_num

    • 驼峰风格 StuNum

    • 大小写敏感.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值