一直用C++,但像输出浮点数、左对齐、右对齐…还不熟啊。
cin >> x; 输入流
cout << x; 输出流
输入带空格的字符串
采用getline(cin, s);
读取滞留的’\n’
int x;
string s1, s2, s3;
cin >> x;
cin.ingore;
getline(cin, s1);
getline(cin, s2);
getline(cin, s3);
此时,我们一般针对的是采用getline进行输入,因为它会将’\n’读入进去,所以,这时采用cin.ingore读取滞留的’\n’,但是针对cin >> s的输入是没有必要,因为’\n’不会被读入。
浮点数的输出
double x;
x = 3.1415926;
// 按照保留三位小数点输出
// 头文件须有#include <iomanip>
cout << setiosflags(ios::left | ios::fixed);
/*
这是以有效数字(区分小数点)方式输出
cout << setiosflags(ios::left | ios::showpoint);
*/
cout.precision(3);
cout << x << endl;
我个人感觉C++相对C而言,在这一点稍微要麻烦一些,不过用熟了也是很自然的。
左对齐、右对齐输出
右对齐:
int x = 3.1415926;
cout << setiosflags(ios::right | ios::fixed);
cout.precision(5);
cout.widtn(15);
cout.fill(' '); // 填充
cout << x << endl;
左对齐也同样如此,将cout << setiosflags(ios::right | ios::fixed) -> cout << setiosflags(ios::left | ios::fixed)即可。
其实这对我时也会忘,着手记录下,嘻嘻~~。