C语言中的常量与变量

常量

即 在程序运行过程中,值不能被改变的量

例如:数字,字母等

常量一般分为以下几类:

  1. 整形常量:整数

    1. 例如:123456,-100,056,0x8A
  2. 实型常量:有两种表现姓氏

    1. 十进制小数形式:有小数和小数点组成 例如:123.45、0.1、0.0等

    2. 指数形式:由于计算机输入或输出时无法表示上标和下标,所以规定以字母e或E代表以10为底的指数,e之前必须有数字,e之后数字必须为整数

      错误示范:e5、12e12.3

      正确示范:12.34e3、12.34E3

  3. 字符常量:有两种形式

    1. 普通字符 常量:用单引号括起来的一个字符 (不能超过一个) ‘a’ ,‘#’,‘3’

    2. 转义字符: ‘\n’换行符,’\t’制表符tab,’ \’ 单引号,‘\"’ 双引号,‘?‘问号,’\\‘斜杠 ,’\a’警告声 ,’\b’退格符,‘\f’换页符,’\r’回车,‘\v’垂直制表符,’\o’八进制形式,'\x’十六进制形式

      即将\后面的字符转换为其他功能的字符

  4. 字符串常量 : 用双引号将多个字符括起来

    1. 例如:“abc”
  5. 符号常量 : 用#define指定指定用一个符号代表一个常量

    1. 例如 #define PI 3.1415926 结尾不需要分号
  6. 地址常量:每一个常量、变量、数组的地址在程序的运行期间是不能够被改变的 因此将他称为地址常量

变量

在运行中可以被改变的量

注意:

  1. 变量必须先定义再使用

  2. 变量名称的命名规则

    1. 只能由数字、字母、下划线组成
    2. 不允许数字开头
    3. 同一作用域不允许重名
  3. 在声明变量时赋值 被称为初始化

  4. 在声明后再赋值被称为赋值

常用基本数据类型

整形 无符号(unsigned)、有符号(signed)大小(字节)无符号表示:unsigned int 有符号:int

  1. short 2 2
  2. int 4 4
  3. long 4 4
  4. long long 8 8

一字节为8位 一位代表一个二进制 0000 0000

字符型

  1. char 1字节 ‘A’ 可以转换为数字 其数字对应ASCII表

    1. //工具头文件
      #include <stdio.h>
      void main() {//主函数入口有且只有一个
      
      	char c1 = 'a';
      	int a;
      	a = c1;//隐式转换
      	a = (int)c1;//强制转换
      	printf("%c\t%d", a, c1);
      }
      
    2. 结果image-20220920174320533

  2. string 多字节 “ABC…”

浮点型 :小数

编译器默认为小数类型为double

浮点型类型表示占用大小精度例子
单精度float4字节小数点后6-7位1.396f
双精度double8字节小数点后16-17位
  1. 基本类型之间可以转换 、如果是计算 ,会统一将变量转换到最高精度之后再进行计算

​ 即 double =double+int 那么 会先将int类型抓换为double类型之后再进行加运算

  1. 浮点型、整型 则会将小数部分去掉

    1. 代码

      //工具头文件
      #include <stdio.h>
      
      void float_to_int();
      void int_to_float();
      
      void main() {//主函数入口有且只有一个
      	/*
      	char c1 = 'a';
      	int a;
      	a = c1;//隐式转换
      	a = (int)c1;//强制转换
      	printf("%c\t%d", a, c1);
      	*/
      	float_to_int();
      	int_to_float();
      }
      
      void int_to_float() {
      	int a=1;
      	float b = 33.14354f;
      	b = a;
      	printf("int_to_float:%f\n", b);
      }
      void float_to_int() {
      	int a = 1;
      	float b = 33.14354f;
      	a = b;
      	printf("float_to_int:%d\n",a);
      }
      
      
      
    2. 结果

      image-20220920180746956

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值