以下代碼將文件一的圖片復制到文件二中
#include<stdio.h>
#include<stdlib.h>
int main()
{
char ch;
char fname0[50]="D:\\picture\\ciyun.png";//文件一的名字
char fname1[50]="D:\\picture\\ha1.png"; //文件二的名字
FILE *p1,*p2;//定義兩個文件類型的指針
if((p1=fopen(fname0,"rb"))==NULL)/*fopen用rb(二進制讀取) 的方式打開文件
若能夠正確打開文件,則將用指針p1指向該文件,若不能正確打開,則返回空指針
即,將p1指向一個空指針。*/
{
printf("文件1打開發生錯誤!");
exit(0); //exit(0)函數可以終止程序,頭文件為#include<stdlib.h >
}
if((p2=fopen(fname1,"wb+"))==NULL)//同上 ,但以wb+(二進制寫入)方式打開文件
{
printf("文件2打開發生錯誤!");
exit(0);
}
while(!feof(p1))/*feof(p1)判斷指針p1是否到達p1所指文件結尾,
即判斷文件p1是否到達結束狀態 ,若到達結束狀態則返回值1(真),反之,返回值為0(假)*/
{
ch=fgetc(p1);//在一個p1所指文件中讀取一個字符並且將指針指向下一個字符
fputc(ch,p2);//將ch字符儲存在文件p2,並將指針下移
}
fclose(p1);//關閉文件
fclose(p2);
}