- 1、本文档共32页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式LinuxC语言程序设计基础教程-IT培训-华清远见.PDF
嵌入式Linux C语言程序
设计基础教程
作者:华清远见
第 2 章 数据
本章目标
在上一章中,读者了解了嵌入式的基本概念,学习了嵌入式 Linux C 语言相关开发工具。本章主要介
绍嵌入式 Linux C 语言的数据的相关知识。通过本章的学习,读者将会掌握如下内容:
ANSI C 与 GNU C C 语言的基本数据类型
变量的定义、作用域、链接属性及存储方式 常量的定义方式
预处理 字长和数据类型
数据对齐 字节序
专业始于专注 卓识源于远见
2.1 ANSI C 与 GNU C
2.1.1 ANSI C 简介
C 语言是国际上广泛流行的一种计算机高级编程语言,它具有丰富的数据类型以及运算符,并
为结构程序设计提供了各种数据结构和控制结构,同时具有某些低级语言的特点,可以实现大部
分汇编语言功能,非常适合编写系统程序,也可用来编写应用程序。而且,C 语言程序具有很好的
可移植性。
1983 年,美国国家标准协会(ANSI)根据 C 语言问世以来各种版本对 C 的发展和扩充制定了
新的标准,并于 1989 年颁布,被称为 ANSI C 或 C89。目前流行的 C 编译系统都是以它为基础的。
2.1.2 GNU C 简介
GNU 项目始创于 1984 年,旨在开发一个类似 UNIX,且为自由软件的完整的操作系统。GNU 项目由
很多独立的自由/开源软件项目组成,其官方站点为 。如今,这些 GNU 中的软件
项目已经和 Linux 内核一起成为 GNU/Linux 的组成部分。
GCC 是 GNU 的一个项目,是一个用于编程开发的自由编译器。最初,GCC 只是一个 C 语言编译器,
它是 GNU C Compiler 的英文缩写。随着众多自由开发者的加入和 GCC 自身的发展,如今的 GCC 已经是
一个支持众多语言的编译器了,其中包括 C,C++,Ada,Object C 和 Java 等。所以,GCC 也由原来的 GNU C
Compiler 变为 GNU Compiler Collection,也就是 GNU 编译器家族的意思。
在 Linux 下编程最常用的 C 编译器就是 GCC,除了支持 ANSI C 外,还对 C 语言进行了很多扩展,
这些扩展对优化、目标代码布局、更安全地检查等方面提供了很强的支持。本文把支持 GNU 扩展的 C
语言称为 GNU C。本章主要介绍 GNU C 的基本语法,最后会简单介绍一些常用的扩展。GNU C 可以理解
为在标准 C 的基础上进行了扩展。在了解这些扩展之前,我们先简单回顾一下标准 C 语言。
C 语言的数据类型根据其不同的特点,可以分为基本类型、构造类型和空类型,其中每种类型都
还包含了其他一系列数据类型,它们之间的关系如图 2-1 所示。
图 2-1 常见数据类型分类
1.基本类型
基本类型是 C 语言程序设计中的最小数据单元,可以说是原子数据类型,而其他数据类型(如结
构体、共用体等)都可以使用这些基本类型。
2.构造类型
构造类型正如其名字一样,是在基本数据类型的基础上构造而成的复合数据类型,它可以用于表
示更为复杂的数据。
3.空类型
文档评论(0)