• 标准输入:
    cin>>:遇到空格或者换行(回车)停止并丢掉空格,后面的字符会留到下一次cin中读取
    getline:只有遇到换行才停止(空格会读入),且回车丢弃掉不写到string中。一次读一行

  • c++文件IO:都为字节流(以char为载体),操作单位为字节。
    读入:get()、read(char[],字节数)
    输出:put()、write(char[],字节数)
    get/put一次读一个char;
    read/write一次读一块,且要传入char数组首地址(char指针)。可直接读取结构体,将其地址转换为char指针。
    若要写二进制代码也只能用char来写,对char按位操作再后再读入。

  • 文件打开方式:
    ios::binary与默认方式最主要区别在于对换行符\n的处理。在Windows中\n被解释为\r\n。
    binary:原封不动读入\r\n。(完全按二进制处理)
    默认方式:将\r\n转化为\n读入。
    因此在处理txt等文本文件时,因为有明确的换行概念,所以用默认方式打开,防止多读入\r。
    其他文件为保证读入代码的完全一致,要用binary方式打开。


Post Date: 2018-01-20

版权声明: 本文为原创文章,转载请注明出处