C语言入门:字符指针变量初始化与数组赋值解析

需积分: 9 10 下载量 154 浏览量 更新于2024-08-19 收藏 5.65MB PPT 举报
"C语言基础知识,包括C语言的特点、程序结构和运行方法,以及C语言的历史发展和标准化过程。" C语言是一种广泛应用于系统编程、应用编程、嵌入式系统等领域的高级编程语言。它具有以下特点: 1. **简洁性**:C语言的语法简洁明了,接近汇编语言,使得程序员能更直接地控制计算机硬件。 2. **高效性**:由于C语言允许直接操作内存,因此它的执行效率高,尤其适合编写需要高性能的应用。 3. **可移植性**:C语言编写的程序可以轻易地在不同的计算机平台上移植,这得益于其与硬件的抽象程度。 C程序的结构通常包括预处理指令、函数定义和调用等部分。在计算机上运行C程序,需要经过编译、链接等步骤,其中编译将源代码转换为机器码,链接则将各个编译后的模块组合成一个可执行文件。 在C语言中,对字符指针变量赋初值的方式有两种。第一种是直接赋值,如`char *a = "I love China!";`,这种情况下,字符串常量被存储在只读内存段,而指针变量a指向这个字符串的首字符。第二种是先声明指针再赋值,如`char *a; a = "I love China!";`,效果相同。 另一方面,数组的初始化则有所不同。例如,对于字符数组`char str[14] = {"I love China!"}`,数组str的每个元素被直接初始化为给定的字符序列。需要注意的是,数组一旦定义,就不能像指针那样通过赋值操作改变其内容,即`str[] = "I love China!"`这样的语句是不合法的,因为数组的大小在声明时就已经固定,且其内容通常不能在运行时改变。 C语言的发展历程与UNIX操作系统紧密相连。最初,C语言由Dennis M. Ritchie在B语言基础上创建,用于改进UNIX操作系统。随着《The C Programming Language》一书的出版,C语言逐渐流行,最终被美国国家标准协会(ANSI)和国际标准化组织(ISO)制定为标准,即ANSI C和ISO C。这些标准确保了C语言的跨平台兼容性和一致性,促进了C语言在全球范围内的广泛应用。然而,不同编译器可能对标准有各自的实现差异,因此理解所使用的C编译器特性是很重要的。本书内容主要基于ANSI C标准进行讲解。