菜鸟学C++之旅~几个关于cin cout的使用方法
cin.ignore(a,ch)
方法是从输入流中提取字符,提取的字符被忽略不被使用。每抛弃一个字符,它都要计数和比较字符:如果计数值达到a或者被抛弃的字符是ch,则cin.ignore()函数执行终止;否则,它继续等待。它的一个常用功能就是用来清除以回车结束的输入缓冲区的内容,消除上一次输入对下一次输入的影响;
cin.getline(buf,a)
方法是从输入流中读取a个字符到字符串buf中,如果输入不足a个字符那么读到换行符为止
拓展:cin.getline()包含三个参数,第三个参数默认为'\0'若将其改为cin.getline(buf,5,'a')当输入为jkajk时候输出为jk,当输入为jkjkjk时候,输出为jkjk;
cin.get(a)
从输入流中获取一个字符到a中也可以a = cin.get();也可以是单纯的cin.get()获取的字符并不去存入到某个内存段中
拓展:cout<<cin.get();输出的是获取的字符的ASCII的值;cout<<cin.get(p);输出的是p的内存地址;cout<<(p = cin.get());输出的是p的值,相当于p = cin.get();cout<<p;
cin.peek()
从输入流中的字符挑取一个字符,将其提取出来进行其他操作,该操作不会改变输入流中的内容。就好比从一队苹果中拿出来和照片中的苹果比一比再放回去一样;
cin.gcount()
计算从输入流读入到字符串中字符的个数;
cin.read( buf,a)
从输入流中读取a的字符buf字符串中;
cin.write(buf,a)
从buf字符串中读取a个字符到输出流中;
cout.precision(a)
设置输出的精确度,保留a位小数;
cout.width(a)
设置下一次输出的输出宽度为a,输出的右对齐,不足的用空格补足,超过的输出全部的数据;