C语言文件题?

C语言文件题?,第1张

#include <stdio.h>

#define MAXSIZE 1024

int main(void)

{

    char fileName[MAXSIZE]

    char buf[MAXSIZE]

    FILE* file

    printf("Please input filename: ")

    gets(fileName)

    printf("Please input some characters: ")

    gets(buf)

    if( (file = fopen(fileName, "w")) == NULL ){

        printf("Open file error!\n")

    }else{

        fprintf(file, "%s", buf)

    }

    return 0

}

/*头文件,包含的函数库, stdio.h是C语言的输入输出库,里面有最常见的函数,你需要某个函数时可以man一下,上面有函数功能介绍和函数使用方法、即需要引用的头文件。*/

#include <stdio.h>

/*函数入口,C语言程序执行程序是从main函数开始执行的*/

main ()

{

/*定义一个文件标识号指针,后面用fopen函数打开某个文件时,该指针会指向文件的内容*/

FILE *fp

/*定义一个整形数 i 和k,一个容量为6的整形数组a,其首地址为a*/

int i,a[6]={1,2,3,4,5,6},k

/*fopen函数:函数功能: 打开一个文件

函数原型:FILE * fopen(const char * path,const char * mode)

相关函数:open,fclose,fopen_s[1] ,_wfopen

所需库: <stdio.h>

返回值: 文件顺利打开后,指向该流的文件指针就会被返回。若果文件打开失败则返回NULL,并把错误代码存在errno 中。

一般而言,打开文件后会作一些文件读取或写入的动作,若打开文件失败,接下来的读写动作也无法顺利进行,所以在fopen()后请作错误判断及处理

*/

fp = fopen("data.dat","w+")

/*将数组a首地址存的一个整数a[0]输入到文件指针fp所指向的data.dat文件里面*/

fprintf(fp,"%d\n",a[0])

for (i=1i<6i++)

{

/*

函数名: fseek

功 能: 重定位流上的文件指针

用 法: int fseek(FILE *stream, long offset, int fromwhere)

描 述: 函数设置文件指针stream的位置。如果执行成功,stream将指向以fromwhere为基准,偏移offset个字 节的位置。如果执行失败(比如offset超过文件自身大小),则不改变 stream指向的位置。

*/

fseek(fp,0L,0)

/*这里是通过文件指针fp,在文件data.dat中读取一个整数写到k中*/

fscanf(fp,"%d",&k)

/*将文件指针偏移到文件首地址*/

fseek(fp,0L,0)

/*通过for循环,将数组a中第二个数到第六个数加上k后再写入到文件中*/

fprintf(fp,"%d\n",a[i]+k)

}

rewind(fp)

fscanf(fp,"%d",&k)

fclose(fp)

printf("%d\n",k)

}

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

void filecomp(FILE* fp1, FILE* fp2)

{

char s1[100],s2[100]

int find=0

while(1)

{

memset(s1,'\0',100)

memset(s2,'\0',100)

fscanf(fp1,"%[^\n]",s1)

fscanf(fp2,"%[^\n]",s2)

fgetc(fp1)

fgetc(fp2)

if(strcmp(s1,s2)!=0)

{

printf("\n%s  %s",s1,s2)

find=1

break

}

if(feof(fp1) || feof(fp2))

{

fclose(fp1)

fclose(fp2)

break

}

}

if(find==0)

{

printf("\n未发现不同\n")

}

}

int main()

{

FILE *fp1,*fp2

fp1=fopen("f:\\a.txt","r")

fp2=fopen("f:\\b.txt","r")

if(fp1!=NULL && fp2!=NULL)

{

filecomp(fp1,fp2)

}

else

{

printf("file open error!\n")

}

return 0

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11515904.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存