我以前写过一篇类似的文章:https://blog.csdn.net/morixinguan/article/details/83309576关于文件操作,尤其是从头到尾的阅读,如果您像上述文章那样操作,效率显然太低。如果数据很多,则很难处理。
因此,我想到了使用更好的数据结构来解决此问题,您只是想从头到尾显示它吗?然后,您可以使用链接列表来解决此问题。 & nbsp;& nbsp;& nbsp; typedef结构链接{int size& nbsp ;;& nbsp;无效* ptr;& nbsp;结构链接结构链接* pre& nbsp ;; }链接;链表的数据结构,ptr是要存储的数据,pre是前任指针,next是后继指针。
通过这两个指针,可以轻松实现链表的遍历。 & nbsp;  以下定义了要实现的功能:typedef& nbsp; void(* print_t)(void * Data)& nbsp;& nbsp; void print(void * Data); //将链接列表节点打印为空& nbsp; print_links(LINKS * Header,print_t& nbsp; func); //创建链接列表标题LINKS& nbsp; * Create_Links_Header(int size); // Header insert void& nbsp; top_append(LINKS * Header,void * Data,int size); //获取文件中的总行数int GetTotalLineCount(FILE * file); & nbsp;& nbsp;& nbsp;总体实施:#include< stdio.h& gt; #include& lt; stdlib.h& gt; #include& lt; string.h& gt; #define& nbsp; NR(x)& nbsp; (sizeof(x)/ sizeof(x [0] +0))& nbsp; typedef结构链接{int size& nbsp ;;& nbsp;无效* ptr;& nbsp;结构链接结构链接* pre& nbsp ;; }链接; & nbsp;类型定义& nbsp; void(* print_t)(void *数据)& nbsp ;;& nbsp; void print(void * Data);无效print_links(LINKS *标题,print_t& nbsp; func); LINKS& nbsp; * Create_Links_Header(int size); void& nbsp; top_append(LINKS * Header,void * Data,int size); int GetTotalLineCount(FILE *文件); & nbsp; & nbsp; int main(void){int line = 0; int file_all_line = 0; char line_buffer [50] = {0};链接* Header = NULL; // 1。
初始化链接列表标头=& nbsp; Create_Links_Header(0); if(NULL ==标头){fprintf(stderr," malloc& nbsp;标头失败
”); return -1;& nbsp;} // 2。插入数据FILE * FP = NULL; fp = fopen(“ 1.csv”,“ r”); if(NULL == fp){printf("打开CSV文件失败!
”); return -1;} //移动到文件的开头fseek(fp,0,SEEK_SET); //获取文件中的总行数file_all_line = GetTotalLineCount(fp); for(line = 0; line& lt; file_all_line; line ++){if(fgets(line_buffer,50,fp)){printf(“ line_buffer:%s”,line_buffer); top_append(Header,line_buffer,100);}} print_links(Header,print); fclose(fp); free(标题);返回0;}& nbsp; void print(void * Data){printf(“%s”,Data); //可以在这里完成数据处理... //可以在这里进行数据处理..} //打印链接列表节点void print_links(LINKS * Header,print_t func){LINKS * tmp = Header-& gt;下一个& nbsp; while(tmp!= Header){func(tmp-& ptr); tmp = tmp-> next; & nbsp; & nbsp; & nbsp; & nbsp; free(tmp-& gt; pre);}} //获取文件中的总行数int GetTotalLineCount(FILE * file){& nbsp;& nbsp; int line_num = 0; char strLine [50]; fseek(文件,0,SEEK_SET); while(fgets(strLine,50,文件))line_num ++; fseek(文件,0,SEEK_SET); return line_num;} //创建标题LINKS& nbsp; * Create_Links_Header(int size){LINKS * New = NULL& nbsp ;;& nbsp;新= malloc(sizeof(LINKS)); if(NULL == New){fprintf(stderr," malloc LINKS标头失败
”);返回NULL;& nbsp;}& nbsp;新大小=大小; nbsp; New-ptr = NULL;  New-> next = New;新的& gt; =新的& nbsp; & nbsp; return New;} //插入链接列表的开头void& nbsp; top_append(LINKS * Header,void * Data,int size){LINKS * New = NULL;& nbsp;新= malloc(sizeof(LINKS)); if(NULL == New){fprintf(stderr," malloc链接失败
”); return;} New-& gt; ptr = NULL;新大小=大小; nbsp; & nbsp; New-ptr = malloc(size); if(NULL == New-& gt; ptr){fprintf(stderr,“ malloc链接数据失败
”); return;& nbsp;} memcpy(New-ptr,Data,size); New-next = Header-next;  New-& gt;& nbsp; =标头;& nbsp; New-> next-& gt; pre = New; & nbsp; New-> pre-& gt; next = New;& nbsp;}& nbsp;运行结果:excel文件的数据如下图所示:运行程序以获取:从这里看,整个程序基于堆栈的思想,
公司: 深圳市捷比信实业有限公司
电话: 0755-29796190
邮箱: tao@jepsun.com
产品经理: 陆经理
QQ: 2065372476
地址: 深圳市宝安区翻身路富源大厦1栋7楼

更多资讯
获取最新公司新闻和行业资料。
- 高精密贴片电阻阻值表标准阻值表E-96 0603F(+1%) Standard Resistance Table 标准阻值表1 E-96 阻值 代码 阻值 代码 阻值 代码 阻值 代码 阻值 代码 阻值 代码 10 01X 100 01A 1.00K 01B 10.0K 01C 100K 01D 1M 01E 10.2 02X 102 02A 1.02K 02B 10.2K 02C 102K 02D 10.5 03X 105 03A 1.05K 03B 10.5K 03C 105K 03D 10.7 04X 107 04A 1.07K 04B 10.7K 04C 107K 04D 11 05...
- PT100热电阻温度与电阻值对照表(0°C基准0.385) 根据PT100热电阻的标准特性,其电阻值随温度变化而变化,通常基于0°C时电阻为100Ω作为参考。对于给定的温度系数α=0.385Ω/°C(这指的是每度变化的电阻增量),我们可以构建一个简化版的对照表来展示特定温度下对应的电阻值...
- 元利富气缸行程开关AL-10R, CS1-J, C系列:可靠性能与广泛应用 元利富生产的气缸行程开关AL-10R, CS1-J, C系列是工业自动化领域中的重要组成部分。这些型号的行程开关广泛应用于各种机械和设备中,用于检测气缸的位置变化,从而实现自动化控制的目的。AL-10R型行程开关以其紧凑的设计和可...
- JMV-E积层压敏电阻技术参数与应用领域详解 积层压敏电阻(JMV-E)是一种广泛应用于电子设备中的关键保护元件,其主要功能是为电路提供过电压保护,防止瞬态电压对敏感电子元件造成损害。在现代电子产品中,瞬态电压可能来源于雷击、电源波动或电路开关等现象,这...
- 铜的电阻温度系数约为0.004/°C 铜是一种常用的导电材料,因其良好的导电性能和相对较低的成本,在电气工程中被广泛应用。铜的电阻温度系数(temperature coefficient of resistance),是指在特定温度范围内,温度每变化1度时,其电阻值相对于基准温度(通常是2...
- 万用表测电阻显示0.L的原因解析 当使用万用表测量电阻时,如果显示屏上出现“0.L”的读数,这通常意味着被测电阻值小于万用表能够准确显示的最小值。具体来说,“0.L”中的“L”代表低(Low)的意思,表示电阻值过低以至于超出了当前量程设置下的分辨率...
- PTTC聚鼎PT08V2DF-C产品特性与应用范围详解 在现代电子技术飞速发展的今天,PTTC聚鼎PT08V2DF-C作为一种高性能的电子元器件,在多个领域中发挥着重要作用。PTTC聚鼎PT08V2DF-C是一种具备高可靠性、高稳定性的保护器件,广泛应用于各种电子设备中,以确保电路的安全运行。...
- JMV-C积层压敏电阻技术参数及应用领域详解 积层压敏电阻(JMV-C)是一种广泛应用在电子设备中的关键保护元件,它能在瞬间吸收过电压,保护电路不受损害。JMV-C积层压敏电阻具有体积小、响应速度快、可靠性高等特点,特别适合用于电源线路和信号线路的过电压保护。...
- 贴片电容尺寸规格对照表格 ...
- 如何实现IC接口在系统中的应用 在现代计算机系统和软件开发中,接口(Interface)扮演着至关重要的角色,它定义了一组规则和方法,使得不同的组件或系统能够相互协作而无需关心对方的具体实现细节。IC(Integrated Circuit,集成电路)接口是硬件设计中的一个...
- 薄膜电阻厂家价格表 ARG05BTC1000 0805-0.1%-25ppm电阻-100R电阻 viking/光颉代理¥0.17成交14笔1206贴片电阻 精密电阻 102KR 25ppm低温漂 TR1206F102KP0525Z¥0.111206贴片电阻 精密电阻 10KR 25ppm低温漂 TR1206F10K2P0525Z¥0.101210精密电阻 0.1%高精度 330欧姆 50ppm TR1210B330RP0550Z¥1.20v...
- GEMS真空压力开关PS81系列:实现高可靠性与长使用寿命 GEMS真空压力开关PS81系列是专为需要高可靠性和长使用寿命的应用设计的。这款压力开关具有出色的性能和耐用性,能够在各种工业环境中稳定工作。PS81系列特别适用于那些要求频繁动作且需要最小维护的系统。其设计考虑了减...
- 供应价格质量好的电感磁珠现货现售 电感跟磁珠应当说是两兄弟,很多人一直认为它们都是“通直阻交”,很容易混在一起。正所谓:一母生九子,九子各不同。其实电感和磁珠还是有很大区别的。电感的单位是享,型号也是用电感值来命名的,如:GZ2012-100指2012(...
- 1206贴片自恢复保险丝规格表 1206贴片自恢复保险丝的规格表如下:额定电压(V)额定电流(A)动作时间(ms)阻值(Ω)温度范围(℃)50.05300100-40~85100.1300100-40~85120.12300100-40~85160.16300100-40~85200.2300100-40~85250.25300100-40~85350.35300100-40~85500.5300100-40~85750.75300100-40~851001.0300100-40~8511...
- 当电阻以菊花链形式连接到一条线上时:串联电阻 各个电阻器可以串联,并联或串联和并联组合的方式连接在一起,以产生更复杂的电阻器网络,其等效电阻是连接在一起的各个电阻器的数学组合。电阻器不仅是可用于将电压转换为电流或将电流转换为电压的基本电子组件,而...
- 触摸开关:便捷操控与现代设计的完美融合 墙壁开关是家庭装修中不可或缺的一部分,它不仅具备实用功能,还能起到一定的装饰作用。其中,触摸开关因其新颖的操控方式和简洁美观的设计而受到越来越多消费者的青睐。以单开单控触摸开关为例,这类开关主要用于控...
- 使用万用表测量火线与零线电阻为0的现象分析 当使用万用表同时测量火线与零线之间的电阻值时,若读数显示为0,这通常意味着火线与零线之间存在直接的电气连接。这种情况在正常情况下是不被期望的,因为火线与零线之间应当保持一定的绝缘以确保电路的安全性。出现...
- 红宝石电容yxj系列寿命表 450UF16V 8*11.5 YXJ系列 长寿命电解电容 高纹波、长寿命、引线型铝电解电容器「ZLJ系列」「ZLJ系列」是面向低阻抗、高纹波、小型化等要求的各种电源用、面向逆变器或要求长寿命的LED照明输出虑波而开发的RUBYCON低阻抗铝电解电容器的主力产品。采用最新开发的耐高...
- TVS管是如何实现稳压功能的? TVS管是通过改变其结构和工作原理来实现稳压功能的。TVS管的基本工作原理是利用二极管的单向导电特性,将电路中的电压分成两个部分。其中,一个电压通过二极管,进入到TVS管的阴极,然后从阳极流出;另一个电压则被限制...
- 浪涌保护器的专业术语 1.空气终端系统 用于直接接受或承受雷电的金属物体和金属结构,如避雷针、避雷带(线)、避雷网等。 2.引下线系统 连接空气终端和接地装置的金属...