摘要
C实现将txt数据读入内存/CPU缓存的函数,不多说,实现如下。
1. 实现代码
#include "stdafx.h"
#include
#include
int filelength(FILE *fp);
char *readfile(char *path);
int main(void){
char *string;
string=readfile("C:/Users/Joe WANG/Desktop/Data.txt");
printf("数据读入内存完毕! \n");
printf("内存中的数据如下:\n%s \n",string);
system("pause");
return 0;
}
char *readfile(char *path){
FILE *fp;
int length;
char *ch;
if((fp=fopen(path,"r"))==NULL){
printf("open file %s error.\n",path);
exit(0);
}
length=filelength(fp);
ch=(char *)malloc(length);
fread(ch,length,1,fp);
*(ch+length)='\0';
return ch;
}
int filelength(FILE *fp){
int num;
fseek(fp,0,SEEK_END);
num=ftell(fp);
fseek(fp,0,SEEK_SET);
return num;
}
2. Data.txt中的源数据
3. 测试结果