C++教程:谭浩强《输入函数详解》与C语言发展

需积分: 9 3 下载量 147 浏览量 更新于2024-08-23 收藏 8.66MB PPT 举报
在C++程序设计中,输入函数是实现文件操作的关键部分。谭浩强编著的教材中详细介绍了如何使用`infile.read()`函数来读取文件内容。这个函数接受两个参数:一个是输入文件对象,另一个是字符数组或变量的地址,以及要读入的字节数。 首先,`infile.read(char *data, int size)`方法用于将指定数量的字节从文件读入到内存地址`data`所指向的区域。例如,当使用`int a[10];`定义了一个整型数组,我们可以通过`(char *)a`将其转换为字符型地址,然后传入函数,读取10个整型数到数组中。 对于单个值的读取,如`int i;`,可以直接传递变量的地址`&i`,这样函数会读取对应类型的数据(这里是`sizeof(int)`个字节)到变量`i`中。 值得注意的是,对于二进制文件,由于数据不是标准的ASCII码格式,不能直接进行文本读写,需要通过特定的函数(如`fwrite()`或`memcpy()`等)先将二进制数据转换为可以处理的格式。同时,传递地址时,必须确保类型匹配,即强制类型转换为字符型(如 `(char *)&i`)。 C++语言的发展背景展示了其起源和演变过程,自BCPL和B语言的基础上诞生的C语言,因编写UNIX操作系统而流行起来。C++则是C语言的增强版,它结合了高级语言的易用性和低级语言的性能优势,支持结构化编程,拥有丰富的运算符和灵活的数据结构,这使得C++在大型系统和小型控制程序设计中都非常适用。 C语言的特性包括: 1. 结构化编程:简洁灵活,适用于各种规模的程序开发,包括系统程序、控制程序和科学计算。 2. 高级与低级特性结合:既有高级语言的易读性,如丰富的运算符和数据结构,又允许直接操作硬件的低级特性。 3. 可移植性强:C语言编写的程序可在不同型号和档次的计算机上运行,无需大量修改。 4. 程序设计自由度高:经验丰富的开发者可以充分利用这一点,但初学者可能需要更多的时间去理解和调试。 虽然C语言的语法结构相对宽松,可能增加调试的复杂性,但只要深入理解其规则,就能有效编写和调试程序。因此,学习C++不仅涉及输入函数的使用,还包括理解语言的整体结构和特性,这对于提升编程技能至关重要。