C基础知识

  • ASCII:

是基于拉丁字母的一套电脑编码系统。(将字符进行编码的编码表)

常用的ASCII码

‘A’:65

‘Z’:90

‘a’:97

‘z’:122

‘ ’:32

‘0’:48

‘9’:57

  • 进制:

1.二进制前缀:0b

2.八进制前缀:0

3.十进制前缀:无

4.十六进制前缀:0x

十转二:短除法,凑

951 1

475 1

237 1

118 0

59 1

29 1

14 0

7 1

3 1

1

二转八:

0b1 110 110 111

01667

二转十六:

0b11 1011 0111

0x3b7

例子:

831 1

415 1

207 1

103 1

51 1

25 1

12 0

6 0

3 1

1 1

831-512=319

319-256=63

63-32=31

31-16=15

15-8=7

7-4=3

3-2=1

0b1100111111

01477

0x33f

  • 数据存放方式(原码、反码、补码):

51 0b 0001 1001

原码:0001 1001

反码:0001 1001

补码:0001 1001

-12 0b 1000 1100 (第一位符号位)

原码:1000 1100

反码:1111 0011

补码:1111 0100

‘a’ASCII:97 0b 0110 0001

  • C语言虚拟内存图(4G大小):

内核(操作系统)(1G)

用户区(3G):

  • 堆区:提供给程序员开辟空间(malloc动态分配,不会自动回收,free手动回收)

  • 栈区:计算机自己开辟的空间(存储局部变量)

  • mmap:内存映射区(映射内核)

  • 静态区:存储全局变量

.bss:存放未初始化全局变量

.data:存放已初始化全局变量

  • 剩下的空间:代码段、环境变量等

  • 变量、常量:

  • 常量:其值不会发生改变

  • 整型常量:51(十进制) 0b101(二进制) 047(八进制) 0x5a(十六进制)

  • 字符常量:‘a’‘G’‘+’

  • 字符串常量:“adc”“d”

  • 浮点型常量:3.14 1.2e+7

  • 标识常量:#define MAX 100

  • 变量:其值可能发生改变

定义:<存储类型><数据类型><标识符>

  • 存储类型:auto(默认类型),static(静态存储类型),extern(外部存储类型),register(寄存器存储类型)

  • 数据类型:int,short,long,long long,float,double,char,char*

  16位编译器:2 ,2 ,4 ,8 ,4 ,8 ,1 ,2 (所占字节数)

32位编译器:4 ,2 ,4 ,8 ,4 ,8 ,1 ,4

64位编译器:4 ,2 ,8 ,8 ,4 ,8 ,2 ,8

  • 初始化:赋一个初始值 int age = 8;

  • 赋值:age = 9;

  • 变量的生命周期:

普通变量:从定义开始到当前模块结束

全局变量:从定义开始到程序结束(初始值默认为0)

局部变量:从定义开始到当前模块结束(初始值默认为0或随机数)

  • 变量的存储位置:

全局变量:静态区

局部变量:栈区

  • 存储类型:

  • auto:

普通存储类型

int a;

auto int a;

  • register:

寄存器类型

读取速度快,但寄存器少

register int a;

若分配register失败,则分配auto

  • extern:

外部存储类型

拓展全局变量使用范围

让函数、全局变量可以在其他文件中使用

extern int a;

  • static:

静态存储类型

修饰函数、全局变量,只能在本文件中使用

修饰局部变量,延长变量的生命周期

static int a;

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值