在此之前,我从来没有做过C文件编辑之类的,最近接触了一下,记录下我的一些小心得吧!!
1、首先是fopen函数,其只有两个参数,第一个是打开的文件,第二个是打开的方式,具体的网上直接可以搜到
例如:
FILE *fp1,*fp2;
int sign_number=0;
fp1=fopen("Target.json","r");
fp2=fopen("Target_upload.json","r");
char ch1[1024]={0};
char ch2[1024]={0};
fread(ch1,1024,1,fp1);
fread(ch2,1024,1,fp2);
这里我想说的是,由于我是第一次做C语言的文件处理,之前也做个python的文件处理,对于python的文件处理很简单,只需要f = open('/etc/network/interfaces','w'),然后interfaces的数据就放到f里面去了;然而C语言不是,fp1=fopen("Target.json","r");这步操作只是将文件打开然后把其首地址赋给fp1这个FILE类型的指针,必须要经过以下处理数据才会被读出来放在ch1中。
2、memcmp函数时比较两个字符串的前多少个字符是否相同
memcmp(ch1,ch2,number);比较字符串ch1和字符串ch2的前number个字符是否相等,如果相等,则返回0,如果不相等,则返回不是0
3、system("pause");
调试的时候在此处等待,起暂停作用
4、每次用打开文件fopen的时候,最后要用fclose函数关闭,如:fclose(fp1);
5、strlen(ch1);求字符串的长度
6、strstr和strchr
strstr(str1,str2) 函数用于判断字符串str2是否是str1的子串。如果是,则该函数返回str2在str1中首次出现的地址;否则,返回NULL。
char *strchr(char* _Str,int _Ch) 返回首次出现c的位置的指针,返回的地址是被查找字符串指针开始的第一个与Val相同字符的指针,如果s中不存在c则返回NULL。
下面的地址是我用vs2010写的一个简单的源代码,用于判断两个文件有什么不同
http://download.csdn.net/detail/u013896064/9218187