C语言

C语言学习(二)

数据类型及运算符

一、 数据类型

  1. 命名规则:标识符(Identifier)是给变量或函数还有常量起的名字,它遵循以下规则。
    (1)标识符严格区分大小写。例如for与For是两个不同的标识符;
    (2)标识符可由字母(A ~ Z,a ~ z)、数字(0 ~ 9)、下划线—_组成字符串,且▲开始字符必须为字母或者下划线;
    (3)标识符最好不能超过8位,并且不能为C语言的关键字;
    (4)标识符意义要做到“见其名知其意”;

  2. 变量及赋值:变量就是可以变化的量,而每个变量都会有一个名字(标识符)。变量占据内存中一定的存储单元。使用变量之前必须先定义变量,要区分变量名和变量值是两个不同的概念。就好比:住在房间里的客人与房间号是两个不同的概念。
    (1)变量定义形式:数据类型 变量名;
    多变量定义形式:数据类型 变量名 变量名…;

    ★注意:在变量定义中不允许连续赋值,如int a = b = c = 5;为不合法定义
    (2)变量的赋值可分为两种方式:
    ①先声明,后赋值
    ②声明的同时即赋值,例如:
    在这里插入图片描述

  3. 常量(constant)
    定义:在程序运行过程中,其值不能被改变的量称为常量
    分类:数值常量和符号常量
    类型:整形、实型、字符型等
    命名:符合标识符命名规则
    (1)常用转义字符:在这里插入图片描述
    (2)符号常量和枚举常量:
    ①符号常量之命名常量:
    一般采用全大写字母表示,语法:const 数据类型 标识符 = 数值常量;,const的作用就是“冻结”一个量,它的值不能被修改,是一个只读(read only)量。优点:比数值常量可读性好、修改容易。例:在这里插入图片描述
    ②符号常量之宏常量:
    还可以宏定义符号常量,语法:#define 符号量 常量值,注意:#define一般都是定义在程序的头,#include之后,main之前。例:在这里插入图片描述
    ③枚举常量:
    常量值是固定的几个选项,语法:enum 枚举标志名{常量1, 常量2,…};,虽然枚举常量可以被当做一个整数使用,但这里强烈不建议大家这么做,仅仅将它作为状态的表示,而不使用它们参与运算。例:在这里插入图片描述

  4. 基本数据类型基本数据类型 其中还有空类型:void
    整型(int) // short,long(提供两个限定符来限定整型,short至少16位,long至少32位,长度:long > int > short);
    字符型(char);单精度浮点型(float);双精度浮点型(double)
    ★注意:数字前缀和后缀的含义:
    前缀带0,该常量为八进制;0X为是十六进制
    后缀F表示float;L表示long;UL表示unsigned long
    字符常量在表示中用单引号括起来
    数据类型在这里应当注意取值范围,如果小于或者大于其范围,系统则会提示Overflow(溢出)

  5. 格式化输出语句
    格式化输出语句,也就是占位输出,格式常为:printf(“输出格式符”,输出项),对于我个人的理解,格式化就是替换量输出,其本质不变,代数变;
    ★常用格式符
    (1)%d:带符号十进制整数,例:在这里插入图片描述ans:10
    (2)%c:单个字符,例:在这里插入图片描述ans:c
    ★注意:单个字符为单引号’’
    (3)%s:字符串,例:
    在这里插入图片描述ans:我的博客
    (4)%f:浮点数六位,例:在这里插入图片描述ans:3.140000

  6. 定义一个不可变的常量,例:在这里插入图片描述ans:圆周率:3.140000

  7. 自动类型转换与强制类型转换
    (1)自动类型转换发生在不同的数据类型运算中,根据其字节数进行转换,这里给大家一个简单易记的比喻:装满水的小杯子可以将其中的水倒入空的大杯子里,但是装满水的大杯子把水倒入小杯子中一定会漫出来;类型转换中的字节数的大小对应起容量,只能字节小的可以向字节大的自动转换,但字节大的不能向字节小的自动转换。
    字节大小比较:double(8) > float、long、int(4) > short(2) > char(1)
    (2)强制类型转换是通过定义类型转换运算来实现,基本形式:(数据类型)(表达式),它可以强制将高字节转化为低字节,例如:double a = 3.14;int a = (int)a;输出后的值是由3.140000转变为3
    ★注意:1.数据类型和表达式括号不能少;2.此转化只是本次运算中临时性改变,其原数据的变量值和类型不改变;3.转换的运算不遵循四舍五入原则,例如:将double转换为int,直接省去double小数点后所有值。

二、运算符

  1. 运算符号是什么?在小学的时候我们就会各种各样的运算,如:加法运算、乘法运算等,我们把它们称为四则运算,而在我们C语言中同样也有如下运算符:
    ※算术运算符 [加(+)、减(-)、乘()、除(/)、求余(或称模运算,%)、自增(++)、自减(–)共七种,用于各类数值运算。]
    ※关系运算符 [大于(>)、小于(<)、等于(==)、 大于等于(>=)、小于等于(<=)和不等于(!=)六种,用于比较运算。]
    ※逻辑运算符 [与(&&)、或(||)、非(!)三种]
    ※位操作运算符 [位与(&)、位或(|)、位非(~)、位异或(^)、左移(<<)、右移(>>)六种,用于参加运算的量,按照二进制位进行运算]
    ※赋值运算符 [简单赋值(=)、复合算术赋值(+=,-=,
    =,/=,%=)和复合位运算赋值(&=,|=,^=,>>=,<<=)三类共十一种]
    ※三目运算符(条件运算符) (条件求值( ? : ))
    ※逗号运算符 (把若干表达式组合成一个表达式(,))
    ※指针运算符 (用于取内容(*)和取地址(&)二种运算)
    ※求字节数运算符 (计算数据类型所占的字节数(sizeof))
    ※特殊运算符 (括号(),下标[],成员(→,.)等几种)
    下面我将对部分运算符作出详细的补充说明!

  2. 运算符中常见注意事项:
    (1)自增与自减:取自imooc.com来源:www.imooc.com,在这建议各位一定要去看看!
    (2)复合运算符中,例如:“+=”中间是不存在空格的;算术运算符中没有“×”也没有“÷”;赋值运算符中要牢记等号赋值一定要双等“==”!!!!!
    (3)逻辑运算符(布尔(Boolean)运算符):取自imooc
    与运算(&&):全真才为真,有假即假;
    或运算(||):有真即真,全假即假;
    非运算(!):真即假,假即变为真。
    (4)三目运算符:
    ( 表达式1 ? 表达式2 : 表达式3 );先执行表达式1,如果为真执行表达式2;假的话执行表达式3。
    (5)sizeof运算符:
    sizeof(类型名)或sizeof(变量),计算类型或变量在内存中所占字节数。
    ★指针运算符等特殊运算符,后面对应地方讲解

  3. 运算符优先级:优先级,取自imooc同一级别结合方向为“自左至右”。

还有某些细节问题以后进行补充QAQ。

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值