1、fprintf返回输入到文件中的字符个数:
#include <stdio.h>
#include <IOSTREAM.H>
#include<string.H>
#include <PROCESS.H>
int main()
{
FILE *fRead,*fWrite;
char chChar = 'a';
char szFileContent[100];
int i = 0;
// fRead = fopen("d:\\1.txt","r+");
fWrite = fopen("d:\\1.txt","wt");
memset(szFileContent,0,sizeof(char)*100);
// if (fRead != NULL)
// {
// fseek(fRead,0,SEEK_SET);
//
//
// while((chChar = fgetc(fRead))&&(chChar != EOF))
// {
// putchar(chChar);
// szFileContent[i] = chChar ;
// i++;
// }
//
//
// szFileContent[i] = 0;
// fclose(fRead);
// fRead = NULL;
//
// }
// else
// {
// cout<<"can't open the txt"<<endl;
// }
if (fWrite != NULL)
{
int iCount = fprintf(fWrite," open the write-only txt");
cout<<"iCount:"<<iCount<<endl;
fclose(fWrite);
fWrite = NULL;
}
else
{
cout<<"can't open the txt"<<endl;
}
// cout<<endl<<"szFileContent:"<<szFileContent<<endl;
return 1;
}
iCount:24
2、fprintf所对应的文件指针不能为“rw+”
#include <IOSTREAM.h>
#include <STDIO.H>
#include <PROCESS.H>
void t_printf()
{
}
void main()
{
FILE *fStream = NULL;
char s[] = "this is a string!!";
char c = '\n';
fStream = fopen("d:\\1.txt","w+");
if (fStream != NULL)
{
int iCount = fprintf(fStream,"%s%c",s,c);
cout<<"iCount:"<<iCount<<endl;
fclose(fStream);
fStream = NULL;
system("type d:\\1.txt");
}
else
{
cout<<"打开文件失败"<<endl;
}
}
运行结果:
iCount:19
this is a string!!