“代码修改自身”为啥要加个引号呢?
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <malloc.h> #include <io.h> #include <windows.h> FILE *f; char cmd[256]; char fn[256]; char fn_old[256]; char fn_new[256]; char *b,*p; int fl,i; int main() { char a[]="hello world!1"; printf("%s",a); GetModuleFileName(NULL,fn,256); sprintf(fn_old,"%s_old",fn); sprintf(fn_new,"%s_new",fn); f=fopen(fn,"rb"); if (NULL==f) { printf("Can not open file %s!\n",fn); return 1; } fl=filelength(fileno(f)); b=(char *)malloc(fl); fread(b,1,fl,f); fclose(f); for (i=0;i<fl-14;i++) { if (0==memcmp(b+i,"hello world!",12) && b[i+12]) { b[i+12]=0x63-b[i+12]; break; } } f=fopen(fn_new,"wb"); if (NULL==f) { printf("Can not create file %s!\n",fn_new); free(b); return 2; } fwrite(b,1,fl,f); fclose(f); free(b); if (!access(fn_old,0)) remove(fn_old); sprintf(cmd,"cmd.exe /c ren "%s" "%s"© "%s" "%s" >NUL 2>NUL",fn,strrchr(fn_old,""\"")+1,fn_new,fn); WinExec(cmd,SW_HIDE); return 0; } //C:\test>changemyself //hello world!1 //c:\test>changemyself //hello world!2 //c:\test>changemyself //hello world!1 //c:\test>changemyself //hello world!2
http://bbs.csdn.net/topics/390627329
http://bbs.csdn.net/topics/390968067
解决方案:8分
快过年了,赵老师要普天同庆啊
解决方案:8分
赵老师利害哈!
解决方案:8分
这么多了都
解决方案:8分
解决方案:8分
赵老师欢喜过大年
解决方案:8分
赵老师的最新研究成果.
解决方案:8分
赵老师发年货了
解决方案:8分
赵老师单位发了 3 块 表,这么欢喜。
解决方案:8分
本人来围观顺便蹭分。
解决方案:8分
老湿你好。老湿再见
解决方案:8分
赵老师利害!
解决方案:8分
正在看。
解决方案:8分
这~~~ 恭喜了 进来拿分
解决方案:7分
恭喜,搭车接分。
赵老师的文化程度,就搞个命令行重命名+复制的代码自修改,太小儿科了吧
赵老师的文化程度,就搞个命令行重命名+复制的代码自修改,太小儿科了吧
解决方案:8分
拎 分
解决方案:8分
解决方案:8分
过来看看,顺便接分
解决方案:8分
过年,捧个场,赵老湿,接个分
解决方案:8分
赵老湿 你好 赵老湿 再见 。
解决方案:8分
过年捧场,接分
解决方案:8分
过来接
解决方案:8分
解决方案:8分
高手啊,膜拜
解决方案:8分
赵老师好
解决方案:8分
通常一有一些厉害问题时总少不了赵老师的身影,肾好!肾好!
解决方案:8分
在这普天同庆的日子里,免不了要围观一下赵老湿
解决方案:9分
解决方案:9分
“代码修改自身”为啥要加个引号呢?
解决方案:8分
300分全给本人,本人顶你
解决方案:8分
顶顶顶顶顶顶顶顶顶顶!!!
解决方案:8分
关注越多,责任越大!
每天回帖接分!
每天回帖接分!
解决方案:8分
解决方案:6分
接分,接分,接赵老师的分。
解决方案:8分
哈哈,来论坛看过LZ几次,膜拜一下,顺便关注一下。
解决方案:8分
解决方案:6分
吊炸天。膜拜一下,不知道老师对阅读源代码有何建议吗?本人计划将一部分源代码抽出来进行编译。
解决方案:8分
厉害,赵老师
解决方案:6分
虽然不是前排,但不耽误围观赵老师
不明而觉厉
不明而觉厉