- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第七章 文件 与 结构体 第一节 文件操作 C++语言提供了一批用于文件操作的标准函数,本节不是介绍文件打开函数fopen,而是介绍另一个函数freopen,它们都包含于标准库cstdio中,文件操作基本步骤如下: (1)打开文件,将文件指针指向文件,决定打开文件类型; (2)对文件进行读、写操作; (3)在使用完文件后,关闭文件。 一、重定向版 二、fopen版 重定向用起来很方便,但并不是所有算法竞赛都允许读写文件。甚至有的竞赛允许访问文件,但不允许使用freopen这样的重定向方式读写文件,可以使用fopen版,对scanf和printf语句适用。程序如下: #includecstdio using namespace std; int main() { FILE *fin,*fout; fin = fopen(in.txt,rb); //定义输入文件名 fout = fopen(out.txt,wb); //定义输出文件名 int temp,sum=0; while (fscanf(fin,%d,temp)==1) //从输入文件中读入数据 { sum=sum+temp; } fprintf(fout,%d\n,sum); // coutsumendl; fclose(fin);fclose(fout); //关闭文件,可省略 return 0; } 第二节 结构体 在实际问题中,一组数据往往具有不同的数据类型。例如,人口大普查时,我们需要记录每一位公民的姓名,年龄,性别,住址,身份证号码。这些信息分别要用整型,字符型,字符串型来记录。为了解决问题,C++语言给出了另一种构造数据类型——“结构体”,它在数据存储方面相当于其他高级语言中的记录,但它有着面向对象的优势。 7.2.1 结构体定义和操作 1. 定义结构体及结构体变量 结构体变量的定义有两种方式: 定义结构体的同时定义结构体变量 struct 结构体名 { //其中 struct 是关键字 成员表 //可以有多个成员 成员函数 //可以有多个成员函数,也可以没有 } 结构体变量表; //可以同时定义多个结构体变量 结构体变量名列表的各个变量用“,”隔开。 例如: struct DATA{ int a[2]; //成员为一个数组 int c; }data_a,data_b; 当然,我们也可以先定义结构体再定义结构体变量 struct 结构体名{ 成员表 成员函数 }; 结构体名 结构体变量表;//同样可以同时定义多个结构体变量 例如: struct DATA{ int a[2]; int c; }; DATA data_a,data_b;//这种定义方式与上一种方式的效果是相同的 在定义结构体变量时注意,结构体变量名和结构体名不能相同。在定义结构体时,系统对之不分配实际内存。只有定义结构体变量时,系统才为其分配内存。 2.成员调用 结构体变量与各个成员之间引用的一般形式为: 结构体变量名. 成员名 对于上面定义的结构体变量,我们可以这样操作: cindata_a.a[0]data_a.a[1]; //一般情况下不能写 cindata_a; int a=data_a.a[0]+data_a.a[1]; //就像用整形变量一样用a[0]、a[1] data_b=data_a; //结构体之间的相互赋值是合法的 data_a.c=0; //就如同给整形变量赋值 实际上结构体成员的操作与该成员类型所具有的操作是一致的。 成员运算符“.”在存取成员数值时使用,其优先级最高,并具有左结合性。在处理包含结构体的结构体时,可记作: strua. strub. membb 这说名结构体变量 stru
您可能关注的文档
最近下载
- 产业孵化中心项目可行性研究报告.docx
- EPC工程总承包项目商务创效及管理-11-23.pptx VIP
- 部编版三年级语文复习(上册)-基础训练.pdf
- 三年级上册道德与法治期末测试卷及参考答案(完整版).pdf
- 2024年世界职业院校技能大赛高职组“导游服务组”赛项参考试题库(含答案).doc VIP
- QS18A-型万能电桥说明书.pdf VIP
- 名著《安娜卡列尼娜》读后分享读书笔记PPT课件(带动画可编辑).pptx
- 孙权劝学(解析版)-2024年中考语文之文言文对比阅读(全国通用).pdf VIP
- 2023年北京昌平高二(上)期末语文(教师版).pdf VIP
- 消防机器人灭火救援应用技术分析.pptx VIP
文档评论(0)