硬核干货!初学C语言接触的数据类型和变量(2)

10 篇文章 0 订阅
10 篇文章 0 订阅

初学c语言需要注意的那些知识点!

在这一个星期的c语言的学习中,主要是学习了c语言的数据类型和变量、语法规则、以及运算符的使用操作。
首先,还是对c语言得先有个了解,c语言的优势有很多 :

1,接近底层的编程语言 可以直接在设备上编写c语言程序
2,效率高 效率接近于汇编语言
3,功能强大 虽然编程效率不高,但基本上所有的都支持c语言
4,可以写操作系统 unix操作系统
5,灵活 但是使用起来复杂
6,兼容性好,方便移植

数据类型和变量:
c语言中的基本数据类型:
 字符类型           char                      1字节        [-128,127]       ([-2^7,2^7-1)    
 无符号字符类型     unsigned char              1字节        [0,255]           ([0,2^8-1])
 短整数类型         short(int)               2字节        [-32768,32767]    ([2^15,2^15-1])
                   unsigned short (int)                 [0,65535]         ([0,2^16-1])
 整数类型           int                        4字节        [-2^31,2^31-1]
                   unsigned int                           [0,2^32-1]
 长整数类型         long (int)               4字节/8字节  [-2^31,2^31-1]
                   unsigned long (int)                  [0,2^32-1]
 长长整数类型       long long (int)            8字节        [-2^63,2^63-1]     
                   unsigned long long(int)  8字节        [0,2^64-1]
单精度浮点类型      float                      4字节        +-3.4*10^38        
双精度浮点类型      double                     8字节        +-1.79*10^308

在学习基本数据类型的时候,也有许多需要注意的点:
1:为什么要分数据类型?

①. 节约内存 ②. 方便访问
但是,数据类型同样也带来了一些问题:在计算的过程中带来了许多麻烦和隐藏的问题。

2:计算机是怎么来存储数据:只能表示 0 和 1

3:计算机内存的最小单位:字节

1字节(byte) = 8位(bit)二进制位
1T = 1024G、1G = 1024MB、1MB = 1024KB、1KB = 1024B、1B = 1 byte
1字节 :
不表示正负,能够表示的范围是 0~255 区间范围
表示正负, -128,127

4:计算机中用补码的形式来存储

5:原码:二进制

正数的原码 反码 补码都是一样的
负数的原码 等于 其正数的原码,最高位变1
负数的反码 等于 其原码,符号位不变,其他按位取反
负数的补码 等于 符号位不变,反码加1
用原码进行计算时,会出现问题
用补码来计算时,不会出现问题
用反码能够解决一些负数运行的问题,但解决不了所有的
移码: 浮点数 + 指数 + 127

6:字符类型:char

(1)ASCII码: (American Standard Code for Information Interchange)美国信息交换标准代码
数值 字符
48 ‘0’
65 ‘A’
97 ‘a’
0 ‘\0’
(2)在c语言中,一个汉字不是一个字符,是一个字符串 ‘中’ 一个字符保存不下一个中文汉字
(3)在c语言中, 字符用 单引号 ‘’ 来表示
’ ’ 空格字符
‘a’ 字符a
‘8’ 字符8
8 0000 1000
‘8’ 0011 1000
(4)转义字符:
‘\n’ 换行
‘\r’ 回车
‘\t’ 水平制表符
‘\v’ 垂直制表符
‘\a’ 响铃
‘\b’ 退格
‘\0’ NUL 字符串的结束标志
‘\’ 表示反斜杠字符 '\表示转义字符
‘\f’ 换页
‘\060’ 字符0 (‘0’) 八进制表示
‘\x61’ 字符A (‘A’) 十六进制表示
(5)编码:gbk utf-8
Unicode:为每个国家的每种语言设定了唯一的二进制编码
utf-8 中文汉字 2-4字节 (010 - 2字节 、 011 - 3字节 、 1xx - 4字节)
gbk 中文汉字 2字节 65536
(6)把一个整数赋值给char类型变量,只会把整数最低8个二进制(最低一个字节)数据赋值给char变量
(7)char : 如果要以%d %u的形式输出,要进行扩展,补最高位(符号位)
char变量赋值给int/unsigned 时 ,扩展位 补最高位(符号位)
unsigned char :如果要以%d %u的形式输出,要进行扩展,补0
unsigned char变量赋值给int/unsigned 时 ,扩展位 补0

7:printf :格式化输出

(格式化:按什么样的格式显示内存中的数据)
%c 以char形式显示
%d 以int形式显示
%u 以unsigned int形式显示(printf("%u",d) 无符号数输出)
%hd short
%hu unsigned short
%ld long int
%lu unsigned long int
%f float
%lf double
%g float/double 不显示多余的0
%e 科学计数的形式显示浮点
%E
%o 八进制
%x 十六进制
%p 地址形式显示
%s 字符串
%% 输出一个% %是格式占位符的开始

8:变量:用于储存数据

(1)变量的定义、声明:
变量只有定义之后 ,才能使用。
在同一个作用域下,变量不能重复定义(同一作用域下不能声明同名变量)
一条语句中可以定义多个变量,变量之间用逗号隔开即可。
( 数据类型 变量名1 变量名2;)
( 数据类型 变量名;)
变量名:成为标识符
标识符规则:
①:由字母、数字、_字符 组成
②:不能以数字开头
③:不能和关键字冲突
c89有32个关键字,c99补充了5个,c11补充了一些
(2)变量的初始化(赋值):
①:局部变量定义之后如果不初始化,这个变量里面保存的是垃圾值(随机量)
②:定义变量的本质:其实是程序分配了一块内存,通过变量名可以操作该内存区域的值,所以在编程的过程中,如果不确定该变量需要保存什么数据,一般初始化为0

9:C语言的语法规则

(1)所有的标识符 只能是英文字符 代码中不能出现中文字符(除非用""引入)
(2)语句以 ; 结尾
(3)一般一行放一条语句
(4)语句块是以 {} 为边界
(5)用缩进来表示语句块的结构
(6)用空行 和 空格 来保持书写优美
(7)标识符遵守 驼峰式 下划线的命名方式
驼峰式:首单词小写,后面其他单词首字母大写,其余小写
下划线:单词之间用 _ 连接
(见名知义 、 见名知类型)
(8)保持一种编程风格就行
(9)注释:注释的内容不会被编译,也不会被执行
// 单行注释
/*
多行注释
(不能嵌套注释)
*/
写项目过程中必须要有注释,越详细越好

注意:一般不要删代码,注释就行了

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值