爆款云主机2核4G限时秒杀,88元/年起!
查看详情

活动

天翼云最新优惠活动,涵盖免费试用,产品折扣等,助您降本增效!
热门活动
  • 618智算钜惠季 爆款云主机2核4G限时秒杀,88元/年起!
  • 免费体验DeepSeek,上天翼云息壤 NEW 新老用户均可免费体验2500万Tokens,限时两周
  • 云上钜惠 HOT 爆款云主机全场特惠,更有万元锦鲤券等你来领!
  • 算力套餐 HOT 让算力触手可及
  • 天翼云脑AOne NEW 连接、保护、办公,All-in-One!
  • 中小企业应用上云专场 产品组合下单即享折上9折起,助力企业快速上云
  • 息壤高校钜惠活动 NEW 天翼云息壤杯高校AI大赛,数款产品享受线上订购超值特惠
  • 天翼云电脑专场 HOT 移动办公新选择,爆款4核8G畅享1年3.5折起,快来抢购!
  • 天翼云奖励推广计划 加入成为云推官,推荐新用户注册下单得现金奖励
免费活动
  • 免费试用中心 HOT 多款云产品免费试用,快来开启云上之旅
  • 天翼云用户体验官 NEW 您的洞察,重塑科技边界

智算服务

打造统一的产品能力,实现算网调度、训练推理、技术架构、资源管理一体化智算服务
智算云(DeepSeek专区)
科研助手
  • 算力商城
  • 应用商城
  • 开发机
  • 并行计算
算力互联调度平台
  • 应用市场
  • 算力市场
  • 算力调度推荐
一站式智算服务平台
  • 模型广场
  • 体验中心
  • 服务接入
智算一体机
  • 智算一体机
大模型
  • DeepSeek-R1-昇腾版(671B)
  • DeepSeek-R1-英伟达版(671B)
  • DeepSeek-V3-昇腾版(671B)
  • DeepSeek-R1-Distill-Llama-70B
  • DeepSeek-R1-Distill-Qwen-32B
  • Qwen2-72B-Instruct
  • StableDiffusion-V2.1
  • TeleChat-12B

应用商城

天翼云精选行业优秀合作伙伴及千余款商品,提供一站式云上应用服务
进入甄选商城进入云市场创新解决方案
办公协同
  • WPS云文档
  • 安全邮箱
  • EMM手机管家
  • 智能商业平台
财务管理
  • 工资条
  • 税务风控云
企业应用
  • 翼信息化运维服务
  • 翼视频云归档解决方案
工业能源
  • 智慧工厂_生产流程管理解决方案
  • 智慧工地
建站工具
  • SSL证书
  • 新域名服务
网络工具
  • 翼云加速
灾备迁移
  • 云管家2.0
  • 翼备份
资源管理
  • 全栈混合云敏捷版(软件)
  • 全栈混合云敏捷版(一体机)
行业应用
  • 翼电子教室
  • 翼智慧显示一体化解决方案

合作伙伴

天翼云携手合作伙伴,共创云上生态,合作共赢
天翼云生态合作中心
  • 天翼云生态合作中心
天翼云渠道合作伙伴
  • 天翼云代理渠道合作伙伴
天翼云服务合作伙伴
  • 天翼云集成商交付能力认证
天翼云应用合作伙伴
  • 天翼云云市场合作伙伴
  • 天翼云甄选商城合作伙伴
天翼云技术合作伙伴
  • 天翼云OpenAPI中心
  • 天翼云EasyCoding平台
天翼云培训认证
  • 天翼云学堂
  • 天翼云市场商学院
天翼云合作计划
  • 云汇计划
天翼云东升计划
  • 适配中心
  • 东升计划
  • 适配互认证

开发者

开发者相关功能入口汇聚
技术社区
  • 专栏文章
  • 互动问答
  • 技术视频
资源与工具
  • OpenAPI中心
开放能力
  • EasyCoding敏捷开发平台
培训与认证
  • 天翼云学堂
  • 天翼云认证
魔乐社区
  • 魔乐社区

支持与服务

为您提供全方位支持与服务,全流程技术保障,助您轻松上云,安全无忧
文档与工具
  • 文档中心
  • 新手上云
  • 自助服务
  • OpenAPI中心
定价
  • 价格计算器
  • 定价策略
基础服务
  • 售前咨询
  • 在线支持
  • 在线支持
  • 工单服务
  • 建议与反馈
  • 用户体验官
  • 服务保障
  • 客户公告
  • 会员中心
增值服务
  • 红心服务
  • 首保服务
  • 客户支持计划
  • 专家技术服务
  • 备案管家

了解天翼云

天翼云秉承央企使命,致力于成为数字经济主力军,投身科技强国伟大事业,为用户提供安全、普惠云服务
品牌介绍
  • 关于天翼云
  • 智算云
  • 天翼云4.0
  • 新闻资讯
  • 天翼云APP
基础设施
  • 全球基础设施
  • 信任中心
最佳实践
  • 精选案例
  • 超级探访
  • 云杂志
  • 分析师和白皮书
  • 天翼云·创新直播间
市场活动
  • 2025智能云生态大会
  • 2024智算云生态大会
  • 2023云生态大会
  • 2022云生态大会
  • 天翼云中国行
天翼云
  • 活动
  • 智算服务
  • 产品
  • 解决方案
  • 应用商城
  • 合作伙伴
  • 开发者
  • 支持与服务
  • 了解天翼云
      • 文档
      • 控制中心
      • 备案
      • 管理中心

      文件操作细探微,技术精髓解析全

      首页 知识中心 大数据 文章详情页

      文件操作细探微,技术精髓解析全

      2025-03-04 08:53:34 阅读次数:9

      函数,数据,读写,输出,进制

      正文


      一、为什么使⽤⽂件?

      如果没有⽂件,我们写的程序的数据是存储在电脑的内存中,如果程序退出,内存回收,数据就丢失了,等再次运⾏程序,是看不到上次程序的数据的,如果要将数据进⾏持久化的保存,我们可以使⽤⽂件。


       二、什么是⽂件?

      磁盘(硬盘)上的⽂件是⽂件。

      但是在程序设计中,我们⼀般谈的⽂件有两种:程序⽂件、数据⽂件(从⽂件功能的⻆度来分类的)。


       1、程序⽂件

      程序⽂件包括源程序⽂件(后缀为.c),⽬标⽂件(windows环境后缀为.obj),可执⾏程序(windows环境后缀为.exe)。


       

      2、数据⽂件

       

      ⽂件的内容不⼀定是程序,⽽是程序运⾏时读写的数据,⽐如程序运⾏需要从中读取数据的⽂件,或者输出内容的⽂件。 

      本章讨论的是数据⽂件。

      在以前各章所处理数据的输⼊输出都是以终端为对象的,即从终端的键盘输⼊数据,运⾏结果显⽰到显⽰器上。

      其实有时候我们会把信息输出到磁盘上,当需要的时候再从磁盘上把数据读取到内存中使⽤,这⾥处理的就是磁盘上⽂件。


       3、⽂件名

      ⼀个⽂件要有⼀个唯⼀的⽂件标识,以便⽤⼾识别和引⽤。

      ⽂件名包含3部分:⽂件路径+⽂件名主⼲+⽂件后缀

      例如: c:\code\test.txt

      为了⽅便起⻅,⽂件标识常被称为⽂件名。

       


      三、⼆进制⽂件和⽂本⽂件

      根据数据的组织形式,数据⽂件被称为⽂本⽂件和⼆进制⽂件。

      数据在内存中以⼆进制的形式存储,如果不加转换的输出到外存的⽂件中,就是⼆进制⽂件。

      如果要求在外存上以ASCII码的形式存储,则需要在存储前转换。以ASCII字符的形式存储的⽂件就是⽂本⽂件。

      ⼀个数据在⽂件中是怎么存储的呢?

      字符⼀律以ASCII形式存储,数值型数据既可以⽤ASCII形式存储,也可以使⽤⼆进制形式存储。

      如有整数10000,如果以ASCII码的形式输出到磁盘,则磁盘中占⽤5个字节(每个字符⼀个字节),⽽⼆进制形式输出,则在磁盘上只占4个字节。

       文件操作细探微,技术精髓解析全

      测试代码:

      #include <stdio.h>
      int main()
      {
      	int a = 10000;
      	FILE* pf = fopen("test.txt", "wb");
      	fwrite(&a, 4, 1, pf);//⼆进制的形式写到⽂件中
      	fclose(pf);
      	pf = NULL;
      	return 0;
      }

       在VS上打开⼆进制⽂件:

      文件操作细探微,技术精髓解析全
       在VS上打开⼆进制⽂件的方法
      文件操作细探微,技术精髓解析全
      10000在⼆进制⽂件中

       四、⽂件的打开和关闭

      1、 流和标准流

      (1)流
       

      我们程序的数据需要输出到各种外部设备,也需要从外部设备获取数据,不同的外部设备的输⼊输出操作各不相同,为了⽅便程序员对各种设备进⾏⽅便的操作,我们抽象出了流的概念,我们可以把流想象成流淌着字符的河。

      C程序针对⽂件、画⾯、键盘等的数据输⼊输出操作都是通过流操作的。

      ⼀般情况下,我们要想向流⾥写数据,或者从流中读取数据,都是要打开流,然后操作。


       (2)标准流

      那为什么我们从键盘输⼊数据,向屏幕上输出数据,并没有打开流呢?

      那是因为C语⾔程序在启动的时候,默认打开了3个流:

      • stdin - 标准输⼊流,在⼤多数的环境中从键盘输⼊,scanf函数就是从标准输⼊流中读取数据。

      • stdout - 标准输出流,⼤多数的环境中输出⾄显⽰器界⾯,printf函数就是将信息输出到标准输出流中。

      • stderr - 标准错误流,⼤多数环境中输出到显⽰器界⾯。

      • 这是默认打开了这三个流,我们使⽤scanf、printf等函数就可以直接进⾏输⼊输出操作的。 stdin、stdout、stderr 三个流的类型是: FILE * ,通常称为⽂件指针。

      • C语⾔中,就是通过 FILE* 的⽂件指针来维护流的各种操作的。


       2、⽂件指针

      缓冲⽂件系统中,关键的概念是“⽂件类型指针”,简称“⽂件指针”。

      每个被使⽤的⽂件都在内存中开辟了⼀个相应的⽂件信息区,⽤来存放⽂件的相关信息(如⽂件的名字,⽂件状态及⽂件当前的位置等)。这些信息是保存在⼀个结构体变量中的。该结构体类型是由系统声明的,取名 FILE.

      例如,VS2013 编译环境提供的 stdio.h 头⽂件中有以下的⽂件类型申明:

      struct _iobuf {
      	char* _ptr;
      	int _cnt;
      	char* _base;
      	int _flag;
      	int _file;
      	int _charbuf;
      	int _bufsiz;
      	char* _tmpfname;
      };
      typedef struct _iobuf FILE;
      

       

      不同的C编译器的FILE类型包含的内容不完全相同,但是⼤同⼩异。

      每当打开⼀个⽂件的时候,系统会根据⽂件的情况⾃动创建⼀个FILE结构的变量,并填充其中的信息,使⽤者不必关⼼细节。

      ⼀般都是通过⼀个FILE的指针来维护这个FILE结构的变量,这样使⽤起来更加⽅便。

       
      下⾯我们可以创建⼀个FILE*的指针变量:
       
      FILE* pf;//⽂件指针变量
      定义pf是⼀个指向FILE类型数据的指针变量。可以使pf指向某个⽂件的⽂件信息区(是⼀个结构体变量)。通过该⽂件信息区中的信息就能够访问该⽂件。也就是说,通过⽂件指针变量能够间接找到与它关联的⽂件。
       
      ⽐如:
       
      文件操作细探微,技术精髓解析全

       3、⽂件的打开和关闭

      ⽂件在读写之前应该先打开⽂件,在使⽤结束之后应该关闭⽂件。

      在编写程序的时候,在打开⽂件的同时,都会返回⼀个FILE*的指针变量指向该⽂件,也相当于建⽴了指针和⽂件的关系。

      ANSI C 规定使⽤ fopen 函数来打开⽂件, fclose 来关闭⽂件。

      //打开⽂件
      FILE* fopen(const char* filename, const char* mode);
      
      //关闭⽂件
      int fclose(FILE* stream);
      

       mode表⽰⽂件的打开模式,下⾯都是⽂件的打开模式:

      ⽂件使⽤⽅式

      含义

      如果指定⽂件不存在

      “r”(只读)

      为了输⼊数据,打开⼀个已经存在的⽂本⽂件

      出错

      “w”(只写)

      为了输出数据,打开⼀个⽂本⽂件

      建⽴⼀个新的⽂件

      “a”(追加)

      向⽂本⽂件尾添加数据

      建⽴⼀个新的⽂件

      “rb”(只读)

      为了输⼊数据,打开⼀个⼆进制⽂件

      出错

      “wb”(只写)

      为了输出数据,打开⼀个⼆进制⽂件

      建⽴⼀个新的⽂件

      “ab”(追加)

      向⼀个⼆进制⽂件尾添加数据

      建⽴⼀个新的⽂件

      “r+”(读写)

      为了读和写,打开⼀个⽂本⽂件

      出错

      “w+”(读写)

      为了读和写,建议⼀个新的⽂件

      建⽴⼀个新的⽂件

      “a+”(读写)

      打开⼀个⽂件,在⽂件尾进⾏读写

      建⽴⼀个新的⽂件

      “rb+”(读写)

      为了读和写打开⼀个⼆进制⽂件

      出错

      “wb+”(读写)

      为了读和写,新建⼀个新的⼆进制⽂件

      建⽴⼀个新的⽂件

      “ab+”(读写)

      打开⼀个⼆进制⽂件,在⽂件尾进⾏读和写

      建⽴⼀个新的⽂件

       实例代码:

      /* fopen fclose example */
      #include <stdio.h>
      int main()
      {
      	FILE* pFile;
      	//打开⽂件
      	pFile = fopen("myfile.txt", "w");
      	//⽂件操作
      	if (pFile != NULL)
      	{
      		fputs("fopen example", pFile);
      		//关闭⽂件
      		fclose(pFile);
      	}
      	return 0;
      
      }

      五、⽂件的顺序读写

      1、顺序读写函数介绍

      函数名

      功能

      适⽤于

      fgetc

      字符输⼊函数

      所有输⼊流

      fputc

      字符输出函数

      所有输出流

      fgets

      ⽂本⾏输⼊函数

      所有输⼊流

      fputs

      ⽂本⾏输出函数

      所有输出流

      fscanf

      格式化输⼊函数

      所有输⼊流

      fprintf

      格式化输出函数

      所有输出流

      fread

      ⼆进制输⼊

      ⽂件输⼊流

      fwrite

      ⼆进制输出

      ⽂件输出流

       

      上⾯说的适⽤于所有输⼊流⼀般指适⽤于标准输⼊流和其他输⼊流(如⽂件输⼊流);所有输出流⼀般指适⽤于标准输出流和其他输出流(如⽂件输出流)。


       2、对⽐⼀组函数:

      scanf/fscanf/sscanf

      printf/fprintf/sprintf


      六、⽂件的随机读写

      1、fseek

      根据⽂件指针的位置和偏移量来定位⽂件指针(⽂件内容的光标)。
       
      int fseek ( FILE * stream, long int offset, int origin );
      例⼦:
      /* fseek example */
      #include <stdio.h>
      int main()
      {
      	FILE* pFile;
      	pFile = fopen("example.txt", "wb");
      	fputs("This is an apple.", pFile);
      	fseek(pFile, 9, SEEK_SET);
      	fputs(" sam", pFile);
      	fclose(pFile);
      	return 0;
      }
      

      2、ftell

      返回⽂件指针相对于起始位置的偏移量
       
      long int ftell ( FILE * stream );
      例⼦:
       
      /* ftell example : getting size of a file */
      #include <stdio.h>
      int main()
      {
      	FILE* pFile;
      	long size;
      	pFile = fopen("myfile.txt", "rb");
      	if (pFile == NULL)
      		perror("Error opening file");
      	else
      	{
      		fseek(pFile, 0, SEEK_END); // non-portable
      		size = ftell(pFile);
      		fclose(pFile);
      		printf("Size of myfile.txt: %ld bytes.\n", size);
      	}
      	return 0;
      }

      3、rewind

      让⽂件指针的位置回到⽂件的起始位置
       
      void rewind ( FILE * stream );
      例⼦:
       
      /* rewind example */
      #include <stdio.h>
      int main()
      {
      	int n;
      	FILE* pFile;
      	char buffer[27];
      	pFile = fopen("myfile.txt", "w+");
      	for (n = 'A'; n <= 'Z'; n++)
      		fputc(n, pFile);
      	rewind(pFile);
      	fread(buffer, 1, 26, pFile);
      	fclose(pFile);
      	buffer[26] = '\0';
      	printf(buffer);
      	return 0;
      }

      七、⽂件读取结束的判定

      1、 被错误使⽤的 feof

      牢记:在⽂件读取过程中,不能⽤ feof 函数的返回值直接来判断⽂件的是否结束。

      feof 的作⽤是:当⽂件读取结束的时候,判断读取结束的原因是否是:遇到⽂件尾结束。

      1. ⽂本⽂件读取是否结束,判断返回值是否为 EOF ( fgetc ),或者 NULL ( fgets )

      例如:

      • fgetc 判断是否为 EOF .

      • fgets 判断返回值是否为 NULL .

      2. ⼆进制⽂件的读取结束判断,判断返回值是否⼩于实际要读的个数。

      例如:

      • fread判断返回值是否⼩于实际要读的个数。

      ⽂本⽂件的例⼦:

      #include <stdio.h>
      #include <stdlib.h>
      int main(void)
      {
      	int c; // 注意:int,⾮char,要求处理EOF
      	FILE* fp = fopen("test.txt", "r");
      	if (!fp) {
      		perror("File opening failed");
      		return EXIT_FAILURE;
      	}
      	//fgetc 当读取失败的时候或者遇到⽂件结束的时候,都会返回EOF
      	while ((c = fgetc(fp)) != EOF) // 标准C I/O读取⽂件循环
      	{
      		putchar(c);
      	}
      	//判断是什么原因结束的
      	if (ferror(fp))
      		puts("I/O error when reading");
      	else if (feof(fp))
      		puts("End of file reached successfully");
      	fclose(fp);
      }

       ⼆进制⽂件的例⼦:

      #include <stdio.h>
      
      enum { SIZE = 5 };
      int main(void)
      {
      	double a[SIZE] = { 1.,2.,3.,4.,5. };
      	FILE* fp = fopen("test.bin", "wb"); // 必须⽤⼆进制模式
      	fwrite(a, sizeof * a, SIZE, fp); // 写 double 的数组
      	fclose(fp);
      	double b[SIZE];
      	fp = fopen("test.bin", "rb");
      	size_t ret_code = fread(b, sizeof * b, SIZE, fp); // 读 double 的数组
      	if (ret_code == SIZE) {
      		puts("Array read successfully, contents: ");
      		for (int n = 0; n < SIZE; ++n)
      			printf("%f ", b[n]);
      		putchar('\n');
      	}
      	else { // error handling
      		if (feof(fp))
      			printf("Error reading test.bin: unexpected end of file\n");
      		else if (ferror(fp)) {
      			perror("Error reading test.bin");
      		}
      	}
      	fclose(fp);
      }

      八、⽂件缓冲区

      ANSIC 标准采⽤“缓冲⽂件系统” 处理数据⽂件的,所谓缓冲⽂件系统是指系统⾃动地在内存中为程序中每⼀个正在使⽤的⽂件开辟⼀块“⽂件缓冲区”。从内存向磁盘输出数据会先送到内存中的缓冲区,装满缓冲区后才⼀起送到磁盘上。如果从磁盘向计算机读⼊数据,则从磁盘⽂件中读取数据输⼊到内存缓冲区(充满缓冲区),然后再从缓冲区逐个地将数据送到程序数据区(程序变量等)。缓冲区的⼤⼩根据C编译系统决定的。

       文件操作细探微,技术精髓解析全

      #include <stdio.h>
      #include <windows.h>
      //VS2022 WIN11环境测试
      int main()
      {
      	FILE* pf = fopen("test.txt", "w");
      	fputs("abcdef", pf);//先将代码放在输出缓冲区
      	printf("睡眠10秒-已经写数据了,打开test.txt⽂件,发现⽂件没有内容\n");
      	Sleep(10000);
      	printf("刷新缓冲区\n");
      	fflush(pf);//刷新缓冲区时,才将输出缓冲区的数据写到⽂件(磁盘)
      	//注:fflush 在⾼版本的VS上不能使⽤了
      	printf("再睡眠10秒-此时,再次打开test.txt⽂件,⽂件有内容了\n");
      	Sleep(10000);
      	fclose(pf);
      	//注:fclose在关闭⽂件的时候,也会刷新缓冲区
      	pf = NULL;
      	return 0;
      }

       

      这⾥可以得出⼀个结论:

      因为有缓冲区的存在,C语⾔在操作⽂件的时候,需要做刷新缓冲区或者在⽂件操作结束的时候关闭⽂件。

      如果不做,可能导致读写⽂件的问题。


       九、总结

      1. 使用文件可以将数据永久地存储在计算机的磁盘上,可以用于保存程序的配置文件、保存用户输入的数据、存储大量的数据等。

      2. 文件是计算机上存储数据的一种方式,它可以包含文本、图片、音频、视频等各种类型的数据。

      3. 二进制文件是存储在计算机上的以二进制形式表示的文件,可以包含任意类型的数据。文本文件是以纯文本形式存储的文件,其中只包含可打印的字符。

      4. 在C语言中,可以使用fopen函数打开文件,该函数返回一个指向文件的指针。使用fclose函数关闭文件。

      5. 顺序读写文件是按照文件中数据的顺序依次读取或写入数据。

      6. 随机读写文件是根据需要读取或写入文件中的任意位置的数据,可以使用fseek函数或rewind函数来设置文件指针的位置。

      7. 可以使用feof函数判断文件是否已经读取到文件末尾。

      8. 文件缓冲区是用来暂存文件数据的内存区域,可以使用fflush函数刷新缓冲区,或者使用setvbuf函数设置缓冲区的属性。

      总结:C语言提供了丰富的文件操作函数,可以方便地进行文件的读写操作。需要注意的是,在操作文件时要确保文件已经成功打开和关闭,以及对文件指针的操作要正确。同时,使用缓冲区可以提高文件操作的效率。

      版权声明:本文内容来自第三方投稿或授权转载,原文地址:https://long-lasting-dream.blog.csdn.net/article/details/145470624,作者:长久的梦,版权归原作者所有。本网站转在其作品的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如因作品内容、版权等问题需要同本网站联系,请发邮件至ctyunbbs@chinatelecom.cn沟通。

      上一篇:面试算法题 18-20

      下一篇:MYSQL中的表的操作(如果想知道MYSQL中有关表的操作的知识,那么只看这一篇就足够了!)

      相关文章

      2025-05-19 09:04:53

      【NetApp数据恢复】误操作导致NetApp存储的卷丢失,卷内虚拟机无法访问的数据恢复案例

      【NetApp数据恢复】误操作导致NetApp存储的卷丢失,卷内虚拟机无法访问的数据恢复案例

      2025-05-19 09:04:53
      存储 , 数据 , 数据恢复 , 解压
      2025-05-19 09:04:44

      js小题2:构造函数介绍与普通函数对比

      js小题2:构造函数介绍与普通函数对比

      2025-05-19 09:04:44
      new , 关键字 , 函数 , 对象 , 构造函数
      2025-05-19 09:04:30

      【Canvas技法】辐射式多道光影的实现

      【Canvas技法】辐射式多道光影的实现

      2025-05-19 09:04:30
      代码 , 函数 , 实现
      2025-05-19 09:04:22

      外设驱动库开发笔记54:外设库驱动设计改进的思考

      外设驱动库开发笔记54:外设库驱动设计改进的思考

      2025-05-19 09:04:22
      使用 , 函数 , 初始化 , 定义 , 对象
      2025-05-19 09:04:14

      C语言字符函数和字符串函数--(超全超详细)

      C语言字符函数和字符串函数--(超全超详细)

      2025-05-19 09:04:14
      函数 , 字符 , 字符串
      2025-05-16 09:15:24

      如何将一串数字用函数的方法倒过来(C语言)

      如何将一串数字用函数的方法倒过来(C语言)

      2025-05-16 09:15:24
      函数 , 数字 , 数组
      2025-05-16 09:15:17

      Linux系统基础-文件系统

      Linux系统基础-文件系统

      2025-05-16 09:15:17
      hello , 写入 , 文件 , 输出
      2025-05-16 09:15:10

      画图时使用的函数和一些错误处理

      画图时使用的函数和一些错误处理

      2025-05-16 09:15:10
      数据
      2025-05-14 10:33:31

      【数据结构】第一章——绪论(2)

      【数据结构】第一章——绪论(2)

      2025-05-14 10:33:31
      函数 , 实现 , 打印 , 理解 , 算法 , 输入 , 输出
      2025-05-14 10:33:31

      计算机小白的成长历程——习题演练(函数篇)

      计算机小白的成长历程——习题演练(函数篇)

      2025-05-14 10:33:31
      函数 , 字符串 , 数组 , 知识点 , 编写 , 迭代 , 递归
      查看更多
      推荐标签

      作者介绍

      天翼云小翼
      天翼云用户

      文章

      33561

      阅读量

      5232906

      查看更多

      最新文章

      画图时使用的函数和一些错误处理

      2025-05-16 09:15:10

      30天拿下Rust之引用

      2025-05-14 10:07:38

      springmvc五种数据提交方式

      2025-05-07 09:07:56

      【30天玩转python】机器学习入门

      2025-05-06 09:19:30

      【30天玩转python】数据分析与可视化

      2025-05-06 09:19:30

      【大数据分析工具】使用Hadoop、Spark进行大数据分析

      2025-05-06 09:18:38

      查看更多

      热门文章

      5、使用PyTorch 实现线性回归

      2023-02-27 09:14:47

      一次k8s 数据卷异常问题的解决

      2022-11-08 07:33:08

      Dataloader有哪些使用方法

      2023-02-13 08:10:07

      Vue:自定义v-model数据双向绑定

      2022-11-17 12:37:28

      2022-04-01 访问k8s内的etcd的数据

      2023-02-23 07:38:36

      提升网络训练的准确率

      2023-02-13 09:26:16

      查看更多

      热门标签

      算法 leetcode python 数据 java 数组 节点 大数据 i++ 链表 golang c++ 排序 django 数据类型
      查看更多

      相关产品

      弹性云主机

      随时自助获取、弹性伸缩的云服务器资源

      天翼云电脑(公众版)

      便捷、安全、高效的云电脑服务

      对象存储

      高品质、低成本的云上存储服务

      云硬盘

      为云上计算资源提供持久性块存储

      查看更多

      随机文章

      分类管理-前端列表请求展示渲染

      【RDMA】深入浅出全面解析RDMA -- 研读

      文心一言 VS 讯飞星火 VS chatgpt (122)-- 算法导论10.4 3题

      【数据仓库设计基础(三)】数据集市

      1到100万以内,如何打印99万个不重复的随机数?

      android如何获取listview中的任意行数据

      • 7*24小时售后
      • 无忧退款
      • 免费备案
      • 专家服务
      售前咨询热线
      400-810-9889转1
      关注天翼云
      • 旗舰店
      • 天翼云APP
      • 天翼云微信公众号
      服务与支持
      • 备案中心
      • 售前咨询
      • 智能客服
      • 自助服务
      • 工单管理
      • 客户公告
      • 涉诈举报
      账户管理
      • 管理中心
      • 订单管理
      • 余额管理
      • 发票管理
      • 充值汇款
      • 续费管理
      快速入口
      • 天翼云旗舰店
      • 文档中心
      • 最新活动
      • 免费试用
      • 信任中心
      • 天翼云学堂
      云网生态
      • 甄选商城
      • 渠道合作
      • 云市场合作
      了解天翼云
      • 关于天翼云
      • 天翼云APP
      • 服务案例
      • 新闻资讯
      • 联系我们
      热门产品
      • 云电脑
      • 弹性云主机
      • 云电脑政企版
      • 天翼云手机
      • 云数据库
      • 对象存储
      • 云硬盘
      • Web应用防火墙
      • 服务器安全卫士
      • CDN加速
      热门推荐
      • 云服务备份
      • 边缘安全加速平台
      • 全站加速
      • 安全加速
      • 云服务器
      • 云主机
      • 智能边缘云
      • 应用编排服务
      • 微服务引擎
      • 共享流量包
      更多推荐
      • web应用防火墙
      • 密钥管理
      • 等保咨询
      • 安全专区
      • 应用运维管理
      • 云日志服务
      • 文档数据库服务
      • 云搜索服务
      • 数据湖探索
      • 数据仓库服务
      友情链接
      • 中国电信集团
      • 189邮箱
      • 天翼企业云盘
      • 天翼云盘
      ©2025 天翼云科技有限公司版权所有 增值电信业务经营许可证A2.B1.B2-20090001
      公司地址:北京市东城区青龙胡同甲1号、3号2幢2层205-32室
      • 用户协议
      • 隐私政策
      • 个人信息保护
      • 法律声明
      备案 京公网安备11010802043424号 京ICP备 2021034386号