C语言指针数据类型解析与UNIX历史

需积分: 29 4 下载量 158 浏览量 更新于2024-08-19 收藏 5.94MB PPT 举报
"这篇资源是关于C语言的,特别是针对指针的数据类型和指针运算的一个总结,源自谭浩强的C语言教学材料。内容涵盖了C语言的历史、特点、程序结构以及运行C程序的方法,强调了C语言在编程中的重要地位和其与UNIX操作系统的关系。" 在C语言中,指针是一种强大的工具,它允许程序员直接操作内存地址,提供了高效的数据处理和灵活的编程结构。指针的数据类型是C语言中的一大特色,它关联于各种基本数据类型,如整型(int)、字符型(char)、浮点型(float)等。指针变量存储的是变量的内存地址,而非其值。理解指针的数据类型是掌握C语言的关键部分。 1. 指针的数据类型: - 当声明一个指针时,我们需要指定它将指向哪种类型的数据。例如,`int *p` 声明了一个指向整型变量的指针`p`。 - 指针可以指向任何类型的数据,包括其他指针,这使得可以创建多级指针(如`int **pp`,它是一个指向指针的指针)。 - 不同数据类型的指针在内存中占用的空间可能不同,因此不能直接比较不同类型的指针。 2. 指针运算: - 取地址运算符 `&` 用于获取变量的内存地址,如 `int x = 10; int *p = &x;`。 - 解引用运算符 `*` 用于访问指针所指向的值,如 `printf("%d", *p);` 将打印出 `10`。 - 指针可以进行算术运算,如加减操作,但必须注意,指针的加减是基于其指向的数据类型大小的,比如对于整型指针,`p++` 实际上是移动到下一个整型变量的位置。 3. C语言的历史和发展: - C语言起源于1970年代,由Dennis Ritchie在B语言基础上创建,最初用于编写UNIX操作系统。 - 1978年的《The C Programming Language》(通常称为K&R)书籍确立了C语言的基础,并成为了后续版本的标准参考。 - ANSI和ISO对C语言标准的制定,如ANSI C和ISO C90,确保了跨平台的兼容性和一致性。 4. C程序的结构和运行: - C程序通常包括预处理指令、函数定义和调用,以及主函数`main()`。 - 运行C程序通常涉及编译、链接和执行三个步骤,通过编译器将源代码转换成可执行文件。 学习C语言时,了解这些基础知识是至关重要的,特别是在涉及指针时,理解其数据类型和运算规则能使你更好地利用这一强大特性。谭浩强的教程通常以清晰易懂的方式解释这些概念,适合初学者入门。同时,由于不同C编译器可能存在差异,因此在实践中应结合具体编译环境进行学习。