要求:输入文件名及要写入文件的字符串,输出写入后文件的内容。每次需要在原有文件内容基础上追加写入。
知识点:size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream)
头文件:stdio.h
ptr:要获取的数据的地址(指针)
size:单个元素的大小,单位是字节
nmemb:元素个数
stream:提供数据的文件指针
返回值:实际写入文件的的元素的个数
代码:
#include<stdio.h>
#include<errno.h>
#include<stdlib.h>
#include<string.h>
int main(int argc,char *argv[])
{
FILE *fd;
size_t fsize;
char *str="\n";
if(argc!=3)
{
perror("argc error!正确格式:./main filename fcontent");
exit(1);
}
fd=fopen(argv[1],"a+");
if(fd==NULL)
{
perror("创建文件失败");
exit(1);
}
else
printf("创建成功\n");
fsize=fwrite(str,sizeof(char*),1,fd);
fsize=fwrite(argv[2],sizeof(argv[2]),1,fd);
if(fsize<0)
{
perror("fwrite error");
exit(1);
}
else
printf("写入成功\n");
fsize=fwrite(str,sizeof(char*),1,fd);
fclose(fd);
}