函数fread不以\ 0终止字符串 [英] Function fread not terminating string by \0

查看:575
本文介绍了函数fread不以\ 0终止字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

C语言中的文件的新功能,试图通过fread读取文件

New to files in C, trying to read a file via fread

这是文件的内容:

line1 how

使用的代码:

char c[6];
fread(c,1,5,f1)

输出var'c'时,内容的末尾出现一个随机字符(例如:line1 *)

When outputting var 'c', the contents appear with a random character at the end (eg: line1*)

fread是否不终止字符串,或者我缺少什么?

Does fread not terminate the string or am I missing something?

推荐答案

否. fread函数仅读取多个元素,没有字符串"的概念.

No. The fread function simply reads a number of elements, it has no notion of "strings".

  • 您可以自己添加NUL终止符
  • 您可以改用fgets/fscanf

我个人会选择fgets.

这篇关于函数fread不以\ 0终止字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆