C语言复习-c 的文件操作用过吗?fwrite 的参数是什么?

c 的文件操作用过吗?fwrite 的参数是什么?
解题思路:
文件操作中 write 操作
考点:
1,输入缓冲区:写操作 fwrite()后必须关闭流 fclose()。
2,文件操作:不关闭流的情况下,每次读或写数据后,文件指针都会指
向下一个待写或者读数据位置的指针。
代码/具体阐述:
size_t fwrite ( const void * ptr, size_t size, size_t count, FILE *
stream );其中,
ptr:指向保存数据的指针;
size:每个数据类型的大小;
count:数据的个数;
stream:文件指针;
函数返回写入数据的个数。
扩展:
1.给你个文件(例如:成都.mp3)如何计算文件大小?(提示,使用
fseek 和 ftell 函数)
2.注意区分 C 库函数和 Linux 系统调用 write

#include <stdio.h>

int main()
{
FILE* fp;
if (fp = fopen(“成都.mp3”, “r”))
{
fseek(fp, 0, SEEK_END);
printf("%ld\n", ftell(fp));
fclose(fp);
}
return 0;
}

1。系统调用
系统调用提供的函数如open, close, read, write, ioctl等,需包含头文件unistd.h。以write为例:其函数原型

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 不,C语言fwrite函数不仅可以用于写二进制文件,也可以用于写文本文件fwrite函数是C语言标准库中的一个输出函数,主要用于将数据以二进制形式写入文件。在进行二进制文件写入时,fwrite函数将内存中的数据以字节的形式写入文件,可以灵活地写入任何类型的数据。 然而,fwrite函数也可以用于写文本文件。当以文本模式打开文件时(例如使用fopen函数的"wt"模式),fwrite函数会将数据以字符的形式写入文件。这意味着,fwrite函数可以将字符串、字符数组等文本数据写入文件。 当使用fwrite函数写入文本文件时,需要注意的是,文本文件中的换行符可能会因为操作系统的不同而有所差异。在Windows系统中,换行符为"\r\n",而在Unix/Linux系统中,换行符为"\n"。因此,在不同系统中打开时,可能需要进行换行符的适配。 总的来说,C语言fwrite函数不仅适用于写入二进制文件,也可以用于写入文本文件。根据需求选择正确的模式并进行相应的操作。 ### 回答2: C语言fwrite函数可以用于向文件中写入任意类型的数据,既可以是二进制数据,也可以是文本数据。 fwrite函数的原型为:size_t fwrite(const void *ptr, size_t size, size_t count, FILE *stream); 其中,ptr是要写入的数据的指针,size表示每个数据项的字节数,count表示要写入的数据项的个数,stream表示写入的文件指针。 fwrite函数会按照指定的size和count将数据写入文件。如果写入的是二进制数据,它们将按照原样存储在文件中;如果写入的是文本数据,fwrite函数会将其以ASCII码的形式写入文件。 但需要注意的是,当写入文本数据时,使用fwrite函数无法进行换行操作,因此适合用于写入纯文本内容较短的文件。对于需要格式化输出的文本内容,建议使用fprintf函数。 总结起来,虽然fwrite函数在实际使用中常用于写入二进制数据,但它并不仅限于此,也可以用于写入文本数据。 ### 回答3: 不,C语言fwrite函数可以用于向文件中写入任意类型的数据,包括二进制数据和文本数据。fwrite函数的原型如下: size_t fwrite(const void *ptr, size_t size, size_t count, FILE *stream); 其中,ptr为指向要写入数据的指针,size为每个数据块的大小,count为数据块的个数,stream为指向要写入的文件对象的指针。 当需要向文件中写入二进制数据时,可以直接传入一个指向数据块的指针,并指定每个数据块的大小和数量。例如,以下代码将写入一个int类型的数据到文件中: ```c int data = 123; FILE *file = fopen("binary_file.bin", "wb"); if (file != NULL) { fwrite(&data, sizeof(int), 1, file); fclose(file); } ``` 另外,如果需要向文件中写入文本数据,可以将数据转换为字符串,然后使用fwrite函数写入。例如,以下代码将写入一个字符串到文件中: ```c char text[] = "Hello, World!"; FILE *file = fopen("text_file.txt", "w"); if (file != NULL) { fwrite(text, sizeof(char), sizeof(text), file); fclose(file); } ``` 所以,可以说C语言fwrite函数不仅可以写入二进制文件,也可以写入文本文件

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值