做运营需要知道素材网站,网站建设与管理是学什么,酒店网站建设流程,国外优秀网站建设公司目录 1.流输入输出说明1.执行顺序2.执行顺序 2.截断(trunc)理解 1.流输入输出说明
1.执行顺序
链式操作的顺序#xff1a;当使用多个操作符进行链式插入时#xff0c;执行顺序是从左到右的 每个操作都将数据插入到前一个流的输出中… 目录 1.流输入输出说明1.执行顺序2.执行顺序 2.截断(trunc)理解 1.流输入输出说明
1.执行顺序
链式操作的顺序当使用多个操作符进行链式插入时执行顺序是从左到右的 每个操作都将数据插入到前一个流的输出中 设置流状态 在执行操作之前所有设置(如std::setw(), std::setfill(), std::hex等)都会影响到后续插入的操作这些设置是全局性的一旦设置它们会持续影响后续的所有插入直到再次改变或重置 插入数据 一旦流状态被设置好流会根据当前的格式化状态(如宽度、填充字符和进制)处理随后的插入操作每次插入操作都会根据当前流的状态输出格式化后的结果 示例代码ss std::setw(2) std::setfill(‘0’) std::hex \ distribution(generator);2.执行顺序
运算符用于从输入流中提取数据其执行顺序和影响顺序与有一些相似之处区别流状态 在执行操作之前流的状态(例如有效性、错误状态、EOF等)会影响后续的提取操作 如果流的状态是错误的(流已经到达结束或遇到读取错误)则提取操作将失败 一旦流读取失败后续的操作将不会执行直到流状态被重置 2.截断(trunc)理解
文件阶段的含义 截断到零如果打开一个已存在的文件并以std::ios::trunc模式打开它文件的所有内容将被删除文件的大小变为零 这意味着你会清空文件中的所有数据 指定长度的截断虽然C的标准库没有直接提供指定长度截断的功能但可以通过其他系统调用(如 POSIX 中的 ftruncate)实现 形象理解截断在文件操作中的通常意义是丢弃文件的原有内容并准备写入新的数据 清空文件如果文件已经存在它的内容会被清空文件大小变为零写入新内容接下来可以写入新的数据这些新数据将替代原有的内容 注意事项 数据丢失使用trunc会永久删除文件中的数据因此在使用时需要小心文件必须存在对于trunc模式文件必须已存在否则会出现错误