类iostream 有下面几种从流中抽取成员函数:get(0,getline() put(),read() write()
1\get函数的用法
cin.get()--------------------从流中抽取单个字符串,后面还保存一个\n符号,在使用时,后面应该加上cin.get(),这样吧\n去掉
cin.get(s)-------------------------从流中抽取单个字符存到s中
cin.get(s,int len)----------------------抽取len长的字符串
一般以\n 为结束
#include<iostream> using namespace std; int main() { char s1[80]; char s2[80]; cout << "输入一个字符" << endl; cout << cin.get() << endl; cin.get(); cout << "输入一个字符串" << endl; for (int i = 0; i < 80; i++) { cin.get(s1[i]); if (s1[i] == '\n') { s1[i] = '\0'; break; } } cout << s1; cout << "输入一行字符串" << endl; cin.get(s2, 80); cout << s2 << endl; system("pause"); return 0; }
获取一个字符串,,遇到终止符为止,\n
#include<iostream> using namespace std; int main() { char s1[80]; char s2[80]; cin.getline(s1, 80); cout << s1; system("pause"); return 0; }3、put函数
put函数表示输出一个字符如果换行可以这样写
cout.put("a).put('\n')
4、read函数和write函数
无格式控制,只输入一定数目的字符,不管\n符号
输出格式控制符
dec---------------------------------------------一十进制形式输入和输出整数
hex-----------------------------------------------十六进制输入和输出整数
oct-------------------------------------------八进制输入和输出整数
ws-----------------------------------------------用于输入时跳过开头的空白符
endl----------------------------------------------------插入一个换行符,并刷新输出流
setbase(n)----------------------------------------转换成基数设置为(0,8,,1,16),默认十进制
setfill(int c)---------------------------------------------设置c为填充的字符,默认空格
setpricise---------------------------------------------设置小数点的位数
setw--------------------------------------设置域宽
setiosflags(long f)------------------------------------------------设置有参数f制定的格式标志
#include<iostream> #include<iomanip>//控制格式的头文件 using namespace std; int main() { cout << setw(10) << 987 << 654 << endl;//设置域宽 cout << 987 << setw(10) << hex << 987 << endl; cout << 987 << setw(10) << oct << 987 << endl; cout << 987 << setw(10) << dec << endl; cout << setiosflags(ios::left)<<setfill('&') << setw(10) << 987 << endl; cout << setiosflags(ios::right) << setfill('&') << setw(10) << 987 << endl; system("pause"); return 0; }