ch=getchar();
while (ch!='#') {
putc(ch,fp);
putchar(ch);
ch=getchar();
}
fclose(fp);
}
//getc的用法
void getcTest() {
FILE *fp;
char ch;
if ((fp=fopen("c:\\1.txt","r+")) == NULL) {
printf("cannot open file");
return ;
}
ch=getc(fp);
while(!feof(fp)){
putchar(ch);
ch=getc(fp);
}

putchar(10);
fclose(fp);
}
//fwrite和fread的用法
void fwriteread(){
FILE *fp;
int i;
if((fp=fopen("c:\\1.txt","w+"))==NULL){
printf("cannot open file\n");
return;
}
printf("输入两个学生的信息形如(cuijiantao,23)\n");
for(i=0;i<2;i++){
///////////////////////////////////////////////////////////////////
//当输入字符串的时候,后边要用空格和后边的隔开,否则会出现不可估量的错误
scanf("%s %d",stu[i].stu,&stu[i].age);///////////////////////////////////////
///////////////////////////////////////////////////////////////////////
fwrite(&stu[i],sizeof(test),1,fp);
}
rewind(fp);
for(i=0;i<2;i++){
fread(&stu1[i],sizeof(test),1,fp);
printf("%s %d\n",stu1[i].stu,stu1[i].age);
}
fclose(fp);
}
//fprintf()和fscanf()函数的用法以及fputs() 和fgets()的用法
/////用fprintf()和fscanf()函数对磁盘文件的读写,使用方便,容易理解,
//但是在输入时要进行ASCII码转换到二进制形式,输出时将二进制转换成ASCII码,花费时间较多
//所以在内存与磁盘频繁交换的时候,最好不要用这两个函数
void printfscanfTest(){
FILE *fp;
int i=3;
int j;
char s[100];
if((fp=fopen("c:\\1.txt","w+"))==NULL){
printf("cannot open file");
}
fputs("sdfasdf",fp);
//fprintf(fp,"%d",i);
rewind(fp);
//fscanf(fp,"%d",&j);
fgets(s,10,fp);
//printf("%d",j);
printf("%s\n",s);
fclose(fp);
}
void main(){
printfscanfTest();
}
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-29693-2.html
质检总局就是个假货