C语言基础知识梳理之基本数据类型
C语言基本数据类型
常量
-
常量 :一般是固定不变的
-
C语言常量分类
- 有符号 (包含整数)
- 无符号 :没有负数,如:1u
-
实数常量
- 单精度浮点数 :1.2f(小数位数7~8位)
- 双精度浮点数 : 1.3245(小数位数15~16位)在C语言程序中默认的小数都是双精度
- 科学计数发 : 1.2e4 e3 (e后面的数不能是小数)
-
字符常量
-
字符边界符号 :‘S’ (单引号,每个字母占用一个字节)
-
转义字符 :由 \ +特定字母,如:\t制表符、\“双引号
- 转义字符与其对应的意义
- 转义字符与其对应的意义
-
-
字符串
- 必须使用字符串边界夫括起来,如 ”S“ (双引号,两个字节,因为后面还隐藏了一个’\0’ (字符串结束标记))
-
奇怪的表示方式
- 在数据面前加前缀
- 036 0开头表示八进制整型常量 注意:不能大于7
- 0x34d 0x开头表示十六进制整型常量 注意:不能大于f
- 0b101 0b开头表示二进制整型常量 注意:不能大于1
- .235 .开头表示实数常量
- 在数据后面加后缀
- 1u :无符号(unsigned)
- 1f : 单精度(floa)
- 1L : 长整型(long)
- 基本数据类型及其存储范围对照表
- 在数据面前加前缀
变量
-
变量 :可以改变的量,相当于一个容器
-
表示方式 : 类型 变量名
- 变量名---->标识符
- 变量名(标识符)规则与规范
- 规则
- 必须是字母或者_(下划线)开头,不能用数字开头
- C语言关键字不能作为标识符使用
- 不能使用特殊符号,如:(->.)
- 大小写要严格区分
- 规范
- 见名知意
- 特定的命名标准
- 驼峰式:showImage (建议)
- 帕斯卡(大驼峰):ShowImage
- 匈牙利命名发:由特定的前缀,如:i_num g_num
- 特定的命名标准
- 见名知意
- 规则
- 变量名(标识符)规则与规范
- 变量名---->标识符
-
C语言数据类型
- 整型 :int
- 浮点型
- 单精度:float
- 双精度:double
- 字符型:char
-
注意:一个等于号 = 是赋值,两个等于号 == 是全等
-
注释 一个较大程序中需要20%
- //单行注释
//注释
- /**/多行注释
/* 这是 多行注释 */
-
变量的作用域与生命周期
- 作用域:只在那个范围中使用
- 生命周期:创建到死亡
- 局部变量:用{}限定的
- 全局变量:没有用{}限定,不做初始化,默认为零,从程序的开始到结束
进制与存储
进制只是一种表现形式
- 二进制
-
机器码 (一个数字的二进制)
-
原码(引入符号位(最高位))
- 正数原码 :自己本身(二进制数)如:0000 0001 表示1
- 负数 :加上符号位 如:1000 0001 表示 -1
-
反码
- 正数 :三码合一
- 负数:原码符号位不变,其他位取反
-
补码
- 正数:三码合一
- 负数:原码的反码加一
-
计算机中只有加法
-
二进制与内存存储
- 1位(b)等于1个二进制位
- 1字节(bit)等于8个二进制位
-
存储单位与二进制
-
1 K B = 1024 B = 2 10 B 1 KB = 1024 B = 2^{10} B 1KB=1024B=210B
-
1 M B = 1024 K B = 2 20 B 1 MB = 1024 KB = 2^{20} B 1MB=1024KB=220B
-
1 G B = 1024 M B = 2 30 B 1 GB = 1024 MB = 2^{30} B 1GB=1024MB=230B
-
1 T B = 1024 G B = 2 40 B 1 TB = 1024 GB = 2^{40} B 1TB=1024GB=240B
-
-
进制间的转换
修饰词衍生的数据类型
- short:短
- long:长
- unsigned:无符号
- signed:有符号
- 上述不可以修饰实数型,short和long不能修饰字符型
类型转换
- 隐式转换
- 赋值语句存在隐式转换 如:size = 1.765 隐式转换只把1赋值给size
- 函数传参
- 算术运算
- 强制转换
- 要转换的类型 要转换的东西 (在处理空指针中常用)
大小端
我们平常的个人电脑基本属于x86架构,单片机有arm与x86架构
在内存中每个字节都有一个唯一的数字编号(正整数),我们把这个编号称为地址,这个地址又有高地址与低地址之分
- arm架构:高位数据在低地址上面,低位数据在高地址上面 ——>大端系统
处理空指针中常用)
大小端
我们平常的个人电脑基本属于x86架构,单片机有arm与x86架构
在内存中每个字节都有一个唯一的数字编号(正整数),我们把这个编号称为地址,这个地址又有高地址与低地址之分
- arm架构:高位数据在低地址上面,低位数据在高地址上面 ——>大端系统
- x86架构:高位数据在高地址上面 低位数据在低地址上面 ——>小端系统
本文来自博客园,作者:{oy},转载请注明原文链接:https://www.cnblogs.com/Oysen/p/17005622.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具