在c++中有很多输入输出的操作符,在一次c++的编程作业中,我发现很多错误都是由于不熟悉这些操作符而引发的,现在将其和字符串的操作一并归类:
全文分为几大部分:
基本知识的讲解
ciin流的讲解;
string的讲解;
内存拷贝的讲解;
文件的处理的讲解
1,基本知识的讲解:
A:输入;缓冲区
B:\r与\n的区别和联系:主要是在平台之间的差异
2,cin流的讲解 四个重要的问题:截至的地方,是否可以保存,输入的地方和输入的对象
cin>> 遇到“ ” \n tab会截至输入并不会放入缓冲区 ,而get会放入缓冲区,而且cin的类型众多
//下面均为粘贴:
cin.get() //读入一个字符并返回它的值,这个可以接受空格和制表符
cin.get(一个参数) //读入一个字符并把它存储在ch
cin.get(两个参数) //可以读取字符串
cin.get(三个参数) //可以读字符串 组名,长度,结束符
cin.getline() //这个的输入目标依然是char*,原因是其前面的cin;而这个和前面显著的不同是这个无法超限
getline() //将它作输入字符串的时候,用的是string而不是char*这个和cin.get的操作有关
gets() //这个也是一个字符串,但是这个的输入目标是一个char* ,
cin.ignore() //读取字符并忽略指定字符
cin.peek() //检查下一个输入的字符,不会把字符从流中移除
cin.putback() //返回一个字符给一个流
cin.ignore() //读取字符并忽略指定字符
cin.peek() //检查下一个输入的字符,不会把字符从流中移除
cin.putback() //返回一个字符给一个流
cin.sync()清理缓存区
cout.flush() //清空缓冲区
cout.put() //把字符写入流中
cout.write() //将字符串写入当前输出流中
3.对string的讲解: