istream read 函数问题

sun4216 2003-10-27 09:46:52
在用istream& read (char* s, streamsize n ) 函数时,如果指定的streamsize大于文件长度,如何判断自己实际读了多少个字节?
...全文
320 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
xueweizhong 2003-11-03
  • 打赏
  • 举报
回复
template<class Char,class Traits>
class basic_istream
{
...
streamsize gcount() const
...
};

这个函数可以用来获取上一次read(...)读取的字符个数。

也可以不用read,而直接使用
stream.rdbuf()->sgetn(...)的返回值来确定读取的字符个数。
sun4216 2003-10-29
  • 打赏
  • 举报
回复
up
sun4216 2003-10-27
  • 打赏
  • 举报
回复
strlen(s)应该不可以,因为S并没有被初始化为0,read函数也不会在尾端添加零
daizh 2003-10-27
  • 打赏
  • 举报
回复
strlen(s)

24,855

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧