background image

 

 

 

嵌入式系统常用 C 语言基本语法概要 

1.7  嵌入式系统常用的C语言基本语法概要 

C 语言是在 70 年代初问世的。1978 年美国电话电报公司(AT&T)贝尔实验室正式发

表了 C 语言。由 B.W.Kernighan 和 D.M.Ritchit 合著的《THE C PROGRAMMING LANGUAGE》
一书,被简称为《K&R》,也有人称之为 K&R 标准。但是,在《K&R》中并没有定义一个
完整的标准 C 语言,后来由美国国家标准学会在此基础上制定了一个 C 语言标准,于 1983
年发表,通常称之为 ANSI C 或标准 C。 

本节简要介绍 C 语言的基本知识,特别是和嵌入式系统编程密切相关的基本知识,未

学过标准 C 语言的读者可以通过本节了解 C 语言,以后通过实例逐步积累相关编程知识。
对 C 语言很熟悉的读者,可以跳过本节。 

1.数据类型 

C 语言的数据类型有基本类型和构造类型两大类。基本类型如表 1-1 所示。 

表 1-1 C 语言基本数据类型 

数据类型 

简明含义 

位数 

字节数 

值域 

字节型 

signed char 

有符号字节型 

-128~+127 

unsigned char 

无符号字节型 

0~255 

整型 

signed short 

有符号短整型 

16 

-32768~+32767 

unsigned short 

无符号短整型 

16 

0~65535 

signed int 

有符号短整型 

16 

-32768~+32767 

unsigned int 

无符号短整型 

16 

0~65535 

signed long 

有符号长整型 

32 

-2147483648~+2147483647 

unsigned long 

无符号长整型 

32 

0~4294967295 

实型 

float 

浮点型 

32 

约±3.4×(10

-38

~10

+38

double 

双精度型 

64 

约±1.7×(10

-308

~10

+308

注:常用的嵌入式 C 语言中的 double 类型长度为 4 字节。 

构造类型有数组、结构、联合、枚举、指针和空类型。结构和联合是基本数据类型的组

合。枚举是一个被命名为整型常量的集合。空类型字节长度为 0,主要有两个用途:一是明
确地表示一个函数不返回任何值;二是产生一个同一类型指针(可根据需要动态地分配给其
内存)

。 

2.运算符 

C 语言的运算符分为算术、逻辑、关系和位运算及一些特殊的操作符。表 1-2 列出了 C

语言的运算符及使用方法举例。 

表 1-2 C 语言的运算符 

运算类型 

运算符 

简明含义 

举例 

算术运算 

+ - * / 

加、减、乘、除 

N=1,N=N+5等同于N+=5,N=6 

幂 

A=2,B=A^3,B=8 

取模运算 

N=5,Y=N%3,Y=2 

逻辑运算 

|| 

逻辑或 

A=TRUE,B=FALSE,C=A||B,C=TRUE 

&& 

逻辑与 

A=TRUE,B=FALSE,C=A&&B,C=FALSE 

逻辑非 

A=TRUE,B=!A,B=FALSE 

关系运算 

大于 

A=1,B=2,C=A>B,C=FALSE 

小于 

A=1,B=2,C=A<B,C=TRUE