C语言学习笔记(一)


前言

C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译(摘自百度百科,有点小懒)。对于我来说,C语言是我接下来做嵌入式开发必不可少的工具,因此接下来会发布一系列我自己学习C语言的相关笔记,希望对大家有所帮助。

一、数据类型

C语言的数据类型有系统自带的类型和自己自定义的类型。

1.1 系统自带类型

1.1.1 有符号

char:字符型 ,范围:-127-128;

short:(short int)短整型,范围:-32768-32767

int:整型,范围:-2147483648-214783647

long:(long int)长整型,范围:-2147483648-214783647

long long:(基本不使用)更长的整型

float:单精度浮点型,范围:-340282346638528859811704183484516925440-                       340282346638528859811704183484516925440(至于为什么是这样后面介绍,小数有特殊的规则。)

double:双精度浮点型

       其中 short 、int、long、longlong四种类型都是整型,他们的区别在于范围不同--所占的字节大小不同。在C中可用内置的函数--sizeof--计算每种类型所占的字节数。那么什么是字节(Byte)呢?

         由上图我们可以得到:  char--一个字节;short--两个字节;int--四个字节;long--四个字节;longlong--八个字节。(实际上long可以是4个字节也可以是8个字节,要看在什么环境下。但是一定会满足long字节数>=int字节数,不然怎么叫long!)。

        字节(Byte)是计算机信息技术用于计量存储容量的一种计量单位,一个字节能够存储8个位(bit)的无符号数,范围是0-255。计算机中还有以下几种计量单位:bit,byte,KB,MB,GB,TB,PB。它们之间的关系如下:

  1PB=1024TB、1TB=1024GB、1GB=1024MB、1MB=1024KB、1KB=1024byte、1byte=8bit

        对数字敏感的朋友不难发现1024和8都是2的次方,这与计算机能识别的语言--二进制语言--不谋而合。

1.1.2无符号

unsigned char:字符型,范围:0-255

unsigned short:短整型,范围:0-65535

unsigned int:整型,范围:0-4294967295

unsigned long:长整型,范围:0-4294967295

unsigned long long:更长的整型

1.2 自定义类型

结构体类型、枚举类型、联合体类型

二、变量和常量

2.1变量

变量分为局部变量和全局变量

局部变量是定义在代码块中{    }的变量,它的作用范围是代码块内,它从进入作用域生命周期开始,到出作用域生命周期结束。

全局变量是定义在整个工程中的变量,它的作用范围是整个工程,生命周期是整个工程的生命周期。

2.2常量

常量有以下几种:

字面常量 如1、3.14、100这种我们写出来的数字以及'a'、'b'、"abc"这种字符串字面量。

const 修饰的常变量 加上const后就无法修改,常见于数组、变量

#define 定义的标识符常量 宏定义一般用来替换,使得程序便于移植。

枚举常量 之后细讲


三、字符

3.1字符串

字符串:由双引号""引起来的一串字符称为字符串字面量or字符串。如:"Hello world"

字符串的结束标志是 \0 的转义字符。计算机在计算字符串长度(stringlen)最后的\0是不算做字符串内容,即不计入长度。

3.2转义字符

 虽然转义字符看着有两个字符但是实际上只算一个字符。

总结

以上就是今天的学习笔记了,简单做下总结。主要就讲了三个方面--数据类型--变量和常量--字符。关于自定义类型会在下一篇讲。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值