C语言变量常量的解读

定义

  • 数据类型:固定大小的内存的别名,并且描述一个变量存放什么数据。

  • 数据: 计算机要处理的数据

  • 数据类型不仅帮助我们组织和数据操作,决定了如何有效利用内存(程序运行需要使用内存)

  • C语言中以字节为最小单位进行存储空间计算;可以通过位运算进行位操作

  • 1Byte = 8Bit 1KB = 1024 KB(2^10 ) 1MB = 1024KB(2^20) 1GB = 1024MB(2^30) 1TB = 1024GB(2^40)

常量变量

  • 数据基本表示形式是常量和变量,在内存中申请一块空间用于数据存放

常量

  • 程序执行时不能改变的量;常量存储在常量池

  • int 、float、char、符号常量

  • 整型

    • 使用十进制,八进制,十六进制三种形式表示:
      • 八进制:以0位前缀,后由0-7组成,没有小数部分
      • 十六进制:0x为前缀,后0-9A-F 组成,没有小数部分
    • 长整型数据可用L和l作为后缀
    • 整形:-128~127有符号,无符号0~255
  • 浮点数常量:浮点数是实数

    • 小数:-1325.2322
    • 科学计数法:1.32e-9 = 1.32 ∗ 1 0 − 9 1.32 * 10^{-9} 1.32109 1230.0 = 1.23 ∗ 1 0 3 1.23*10^3 1.23103 = 1.23e3
    • 双精度可用L和l作为后缀
  • 字符常量

    • '' 的一个字符,在英文输入下都是字符,’a’ ,’A’;’路’ 和 中文符号 不是字符

    • 转义字符:\表示的 ’\n’ ’\t’

      ASCII: \n->10 \r->13 \0->0 \t ->

  • 字符串常量:支持字符串常量,不支持字符串变量,使用字符数组或指针实现

​ 用” ” 表示,系统为字符串自动加上’\0’ , 多占一个字节。

  • 定义符号常量: #define宏定义

    #define name data
    

变量

  • 概念:程序运行中数值可改变的量,变量存储在栈区,由操作系统自动分配

    代表内存中特定的存储单元,用于存储数据,存放变量,便于系统划分和分配内存

    变量命名以便通过名字访问

    在计算机底层,内存地址通常以十六进制表示,使用字节表示

    数据类型 变量名;
     int a; a=0;				//先声明,再赋值
     int a = 0;					//声明变量并初始化
    

    对同一个变量赋值时, 新的值会覆盖变量值

    int a =20;   printf("%d",a);                            //输出20
    a = 30;  printf("%d",a);							 //输出30
    

命名规则

  • 变量名必须以字母,下划线_开头,可包含若干 数字;不能用C语言的 关键字 命名;

    系统对大小写敏感,变量名和函数名一般用小写+下划线,常量和枚举用大写+下划线

  • 三类标识符:

    • 关键字:系统特定的含义和用途,变量名不能重名
    • 系统预定义的标识符:库函数名以及预处理指令
    • 用户标识符:用来给程序的变量、函数、常量等命名
  • 使用变量时先定义在使用

    auto break case char const continue defaule do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while
    

    预处理指令

    define endif elif error line include ifdef ifndef pragma undef if else 
    
  • 声明语句可同时定义多个变量

    int a = 0;
    int b = 1;						//分开声明
    int c = 4,d = 5;				//同时声明
    
  • 定义变量只是为了向系统申请内存空间,用于存放相同类型的数据;在未对变量赋值前,变量的值是随机的(无效值)

  • 长整型变量初始化或赋值时,赋值类型为基本整型,编译器自动将赋值数据转成相同类型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值