用c 编写的笔记搜索程序

@{@XXX文本记录@}@ 文本记录格式 xxx 搜索词条

复制代码
#include <stdio.h>
#include <string.h>
#include <stdlib.h>

int main(void){
	FILE *f=fopen("help.txt","r");
	if(f==NULL){
		perror("file");
		return -1;
	}
	char nr[2000];
        
	fseek(f,0,SEEK_END);
	long len=ftell(f);


	rewind(f);
   
        char txt2[len];
	for(int t=0;t<len;t++){
		txt2[t]=fgetc(f);
	}
//	fclose(f);

  	int d=0;
	int  wz=0;
	char txt1[10];

       char bz1[10]; 
       int t=0;
       int k=0;
       char txt[len];
       char bz[14];

a:       scanf("%s",bz1);
	 strcpy(bz,"@{@");
 	memcpy(txt,txt2,len);	 
	 strcat(bz,bz1);
         
	 printf("%s\n",bz);
	 d=0;
	 wz=0;
	 memset(nr,0,2000);

	for(int t=0;t<(len-4);t++){
		if(t==(len-3))  break;
		if(((txt[t]=='@')&&(txt[t+1]=='{')&&(txt[t+2]=='@'))||(wz==1)){
			wz=1;
			nr[d]=txt[t];
	 		d++;
		
						
		}

		if((txt[t]='@')&&(txt[t+1]=='}')&&(txt[t+2]=='@')) {
			d=0; 	   
		       wz=0;

	       		memset(txt1,0,10);	       
       		       memcpy(txt1,nr,strlen(bz));

		       if(memcmp(bz,txt1,strlen(bz))==0){

		       		system("clear");
	              		printf("%s\n",nr);
		      		memset(nr,0,2000);
				memset(bz,0,10);
			    
       				goto a;
		       }
			memset(nr,0,2000);
			
		}
		
	}

      
	puts("没有匹配函数");
       goto a;
	return 0;
}
相关推荐
LaoZhangGong1231 分钟前
MQTT报文的数据结构
c语言·网络·数据结构·mqtt·w5500
ShineWinsu4 分钟前
对于牛客网—语言学习篇—编程初学者入门训练—复合类型:BC140 杨辉三角、BC133 回型矩阵、BC134 蛇形矩阵题目的解析
c语言·矩阵·数组·蛇形矩阵·杨辉三角·牛客网·回型矩阵
Joy-鬼魅13 分钟前
在 Qt 的 .pro 文件中设置警告级别和 C++11 标准
开发语言·c++·qt
脑子慢且灵21 分钟前
【Web前端】JS+DOM来实现乌龟追兔子小游戏
java·开发语言·前端·js·dom
Hard but lovely1 小时前
编译后视角的运算(关于中,后缀(逆波兰)表达式的计算)
开发语言·c++·算法
Tipriest_1 小时前
C++ numeric库简介与使用指南
开发语言·c++·numeric
姓刘的哦1 小时前
Linux驱动开发学习笔记
linux·驱动开发·笔记·学习
励志不掉头发的内向程序员1 小时前
从零开始的python学习——函数(2)
开发语言·python·学习
hy____1232 小时前
C++异常
开发语言·c++
七夜zippoe2 小时前
AI 赋能 Java 开发效率:全流程痛点解决与实践案例(一)
java·开发语言·人工智能