ZKX's LAB

直接运行c语言生成的.exe文件,要打开并读取一个未知路径文件。 c 读取exe版本信息

2020-07-24知识6

C++/C中用文件IO函数实现exe文件内容读取 ifstream fin(\"abc.exe\",ios_base:binary);ofstream fout(\"aaa.exe\",ios_base:binary);char gc;do{fin.read((char*)(&gc),sizeof(char));fout.write((char*)(&gc),sizeof(char));}while。fin.eof());fin.close();fout.close();c语言问题:第二次打开exe文件的时候始终无法读取数据。。。。。。。,在线秒回。。。。。 2个错误;错误1:fscanf(fp,\"%d\",&n[a]);因为你前面fprintf(fs,\"%d\\n\",n[a]);加了\\n,所以应该改为fscanf(fp,\"%d\\n\",&n[a]);错误2:FILE*fp=fopen(\"c:\\\\data\\\\class1.txt\",\"r\");FILE*fs=fopen(\"c:\\\\data\\\\class1.txt\",\"wt\");很多情况下只是打开文件没有关闭文件;FILE*fp;FILE*fs;最好改为在case 2:fp=fopen(\"c:\\\\data\\\\class1.txt\",\"r\");在case 3:fs=fopen(\"c:\\\\data\\\\class1.txt\",\"wt\");下面是我改正好的代码:在WINDOWS下可以执行,结果正确;includeincludeint menu();int main(){FILE*fp;FILE*fs;int a,n[11]={0};system(\"md c:\\\\data\");begin:switch(menu()){case 1:for(a=1;a;a+){printf(\"N[%d]=\",a);scanf(\"%d\",&n[a]);}goto begin;case 2:fs=fopen(\"c:\\\\data\\\\class1.txt\",\"wt\");for(a=1;a;a+)fprintf(fs,\"%d\\n\",n[a]);fclose(fs);printf(\"Save successful。\\n\");gotobegin;case 3:fp=fopen(\"c:\\\\data\\\\class1.txt\",\"r\");for(a=1;a;a+)fscanf(fp,\"%d\\n\",&n[a]);printf(\"Readed it。\\n\");goto begin;case 4:for(a=1;a;a+)printf(\"N[%d]=d\\n\",a,n[a]);getch();goto begin;case 0:printf(\"See you。sleep(1);}return 0;}int menu(){int a=-1。WINDOWS/PREFETCH窗口化,EXE-024b439c,pf 已损坏且无法读取。 这是预读取文件夹,用来存放系统已访问过的文件的预读信息(此信息是系统在访问时自动生成的新信息),以加快文件的访问速度,其扩展名为“PF”。可以将此文件夹中的文件删除同时:Win XP利用“预读取”技术,在实际用到设备驱动程序、服务和shell程序之前装入它们。预读取技术的关键是学习以前的启动过程,对于启动过程中要用到的各种文件,优化其装入模式。这种优化技术也被用到了应用软件上,系统对每一个应用软件的前几次启动情况进行分析,然后创建一个描述应用需求的虚拟“内存映像”,并把这些信息保存到WINDOWSPREFETCH文件夹。一旦建立了映像,应用软件的装入速度大大提高。XP的预读取数据保存了最近8次系统启动或应用软件启动的信息。预读设置虽然可以提高系统速度,但是使用一段时间后,预读文件夹里的文件会变得很多,导致系统搜索花费的时间变长。而且有些应用程序会产生死链接文件,加重了系统搜索的负担。因此,我们应该定期删除这些预读文件。

#软件#printf#char

随机阅读

qrcode
访问手机版