C语言基础笔记

在学习过程中遇到了很多的困难,我觉得最难的不是学会,最难的是怎么去运用它,虽然听懂了,可不会运用是真的扎心啊老铁。
以下是关于C基础知识的个人笔记,希望对和我一样的新手小白有一丢丢的用吧(这已经是简化板了哟),里面所概括的知识也不是非常的全面,只是一些概念性的。

1、C语言开发环境

Linux系统作为学习C语言的开发环境

环境安装:

1、Ubuntu Linux.7z----------虚拟机系统

2、VMware------虚拟机软件

3、安装VMware虚拟机.pdf----安装文档(如有需要的宝子可私信我哦)

4、在虚拟机软件中启用ubuntu系统

Ubuntu Linux.7z--解压

在vmware软件,打开虚拟机,选中

C语言环境:

ubuntu系统---->终端(terminal)

2、C语言基础

1、程序

程序:解决完成特定功能(任务)的流程步骤

计算机程序:让计算机去实现解决问题的步骤执行

计算机语言:计算机能够识别任务的内容(指令)

机器语言:使用0和1表示指令功能

汇编语言(助记符语言):把机器指令用助记符进行表示

高级语言:类似自然语言的编写方式

C语言:高级语言,适合嵌入式开发

2、C语言程序的编写编译

Linux中编写C语言程序

vim工具:在终端上编写文本文件内容----可以使用vim来写程序代码

vim:只是编辑器,类似于 windows 记事本,只负责写文本内容(程序内容)

vim终端的文本编辑器:创建、显示、编辑文本编辑器

vim操作:

vim:打开vim编辑

vim  +  xxxx文件名:使用vim 打开  xxxx文件

如果文件名不存在,创建一个新文件(临时)

vim操作文件,所有的操作都依靠键盘输入(键盘输入是:文本内容还是命令)

vim是多模式编辑器:

命令模式(默认):键盘输入(输入的任何内容),都是命令

插入模式:键盘输入,都是操作文本内容

底行模式:操作vim编辑器

编译:把C程序翻译为计算机能够认识的指令(机器程序)

命令:gcc

gcc  xxx文件名----->编译:进行对应的转换

生成一个编译好的(计算机能够识别,执行的程序):a.out

执行 可执行程序 :

./a.out

3、关键字与标识符

1、关键字

关键字:在规范C语言时,用于表示一定的特殊含义的字符,只要在C程序中使用,就代表了一定的操作和含义,约定的具有特定功能的单词或字符

 C语言程序中,我们所定义的名字不能和关键字重名(一样)

2、标识符

标识符:在当前程序中设定的一些字符符号表示,表示一定的意义,代表一个定义的作用(我们自己所定义的字符符号含义),自己命名的符号

标识符的表示:

由字母数字和下划线构成,且只能以 字母或 下划线开始

示例:A-Z  ,  a-z , 0-9 ,  _

合法标识符:

示例:abc,a1,a2,o_k

非法标识符:

示例:%abc,a$b,1a

4、数据类型

在C语言程序中,数据值都有对应的数据类型

C语言是一种静态类型语言

基本类型:

1、整型

10、-10、1、-101

2、浮点型(实型)

1.2、3.1415、-1.2

3、字符型

'a'、'#'、'0'

1、进制与转换(这里我只是简单的概述了一下进制与转换的问题)

对于计算机而言,只认识 0 和 1

十进制表示:每位数据值范围:0、1、2、3、4、5、6、7、8、9

满10进1(120)

二进制表示:每位数据值范围:0、1,计算机中存储数据以二进制存储

满2进1(0b110)

八进制表示:每位数据值范围:0、1、2、3、4、5、6、7

满8进1(0110)

十六进制表示:每位数据值范围:0、1、2、3、4、5、6、7、8、9、A(10)、B(11)、C(12)、D(13)、E(14)、F(15)

满16进1(0x110)

整数十进制转二进制:除以2取余数,把余数按照从低位到高位依次表示

小数十进制转二进制:乘以2 取整 取到规定的位数

二进制转十进制:二进制每一位的权 乘以 当前位的值  (权:以2为底数,以位数为指数幂)的累加和

十六进制转十进制:十六进制每一位的权 乘以 当前位的值  (权:以16为底数,以位数为指数幂)的累加和

十进制转十六进制:除以16取余数,把余数按照从低位到高位依次表示

二进制转十六进制/八进制:把四位/三位 二进制转为一个十六进制位/八进制位,如果高位不够补0进行转换

2、数的存储:

计算机以二进制方式(0、1)存储数据,但是数据中存在 正 负之分

有符号数:把数据中,最高位作为符号位,用0表示正数,用1表示负数

无符号数:数据中,所有位都是数据位,没有符号位,所有无符号数都是正数

计算机中存储数据是以  补码  格式存储

原码:数据的二进制格式

反码:

正数:反码 == 原码

负数:在原码的基础上每一位(除了符号位)取反(1变为0,0变为1)

补码:

正数:补码 == 原码

负数:在反码的基础上 + 1

位:bit

一个单独的0或1 二进制----1bit

字节:byte

八位二进制---------1Byte    1B = 8bit

千字节:KByte---KB

一千个字节---------1KB       1KB = 1000B

3、基本数据类型

1、整型

整数存储

二进制,补码形式存储

整型:根据在计算机中设定的大小

short (int):短整型------16位二进制(16bit),2B

int:整型-------------32位(32bit),4B

long (int):长整型-------在32位系统大小为 32位(32bit),4B ;在64位系统大小为 64位(64bit),8B

long long (int):超长整型----64位(64bit),8B

有符号数:

(signed):有符号数,最高位为 符号位

无符号数:

unsigned:无符号数,没有符号位

32位无符号整数:unsigned int

16位有符号整数:signed short int--------->short

2、浮点型(实型)

浮点型存储:

二进制,补码形式存储

数据部分 + 指数部分

浮点型:设定类型大小

float:单精度浮点型---32位(32bit),4B,精度:6/7

double:双精度浮点型-----64位(64bit),8B,精度:15/16

3、字符型
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值