把文件中的数据加载到内存进行查找C语言实现
#define _CRT_SECURE_NO_WARNINGS#include#include#includechar **pp=NULL;void initdatatomem(char *path){pp = (char **)malloc(sizeof(char *)*;FILE *p = fopen(path, "r");if (p == NULL){printf("打开失败\n");}else{for (int i = 0; i < i++){char str[275] = { 0 };fgets(str, 275, p);int strlength = strlen(str) + 1;char *px = (char *)malloc(sizeof(char)*strlength);strcpy(px, str);str[strlength - 1] = '\0';pp[i] = px;}}printf("载入内存ok\n");}int getsize(char *path){FILE *p = fopen(path, "r");if (p == NULL){printf("打开失败\n");return -1;}else{fseek(p, 0, SEEK_END);int num = ftell(p);return num;}fclose(p);}int getn(char *path){FILE *p = fopen(path, "r");if (p == NULL){printf("打开失败\n");return -1;}else{int num = 0;while (!feof(p)){char str[275] = { 0 };fgets(str,275,p);num++;}return num;}fclose(p);}/void findstr(char *str){for (int i = 0; i < i++){char *ppp = strstr(pp[i], str);if (ppp != NULL){printf("\n%s", pp[i]);}}}void main() {char *path = "C:\\Users\\xiaokang\\Desktop\\dangdangwang.txt";initdatatomem(path);char str[100] = { 0 };scanf("%s", str);findstr(str);system("pause");}