用cout输出数据的时候总会觉得没有printf好耍,实际上还是我没有学会cout的用法,我也就知道一个  cout<<xxxx<<endl;

至于怎么控制一下,输出几个小数,左对齐,右对齐,改成16进制输出。。。。不好意思,出门百度;

就不麻烦各位百度了,这里传送门建好了:

http://c.biancheng.net/cpp/biancheng/view/116.html

 

http://c.biancheng.net/view/275.html

 

我相信,其实这些你们也懒得看,就是你看了,那你也基本记不住。谁**记得那么多,各种乱七八糟的一大堆,下面我们找一些常用的,好好记一记;

头文件、头文件、头文件    #include <iomanip>

1.字符填充、左对齐右对齐

这个该是要会的吧,毕竟时常需要搞得漂亮一点,像诗一样优雅,咱也不能参差不齐,高高低低。

cout << setw(5) << left << "hh" << "aaaa" << endl;             // hh aaaa

cout << setw(5) << setiosflags(ios::left) << "hh" << "aaaa" << endl;  // hh aaaa

cout << setw(5) << right << "hh" << "aaaa" << endl;             //   hhaaaa

cout << setw(5) << setiosflags(ios::right) << "hh" << "aaaa" << endl;  //   hhaaaa

cout << setw(12) << left << setfill('*') << 12.1 << endl;  // 12.1********

// setw(x)->指定输出宽度为 x 个字符,或输人字符串时读入 x 个字符 ;
// 然后根据right 、left 控制一下左右即可,当然,这两个只对它后面的一个输出有效,第二个就不归它管了(加一个setw);
// cout<<left<<"hh"<<right<<"aaaa"<<endl; 
// setfill(c)->在指定输出宽度的情况下,输出的宽度不足时用字符 c 填充(默认情况是用空格填充)

 

2.十六进制、十进制、八进制输出等

最开始使用C语言,那不就是%d,%o,%x,C++怎么办,翻翻书,哦,我的垃圾课本竟然没有;

int n = 15;
cout << hex << n << " " << dec << n << " " << oct << n << endl;  // f 15 17
// hex是十六进制, dec是十进制, oct是八进制;
// 那关于C语言中 %c 该怎么办,也就是我想输个数字,然后出来字母啥的,或者给个ascll码,出来个字符。。。。emmmmmmm
// cout<<(char)(65)<<" "<<(int)('A')<<endl; 强制转换,我以前怎么就没想到呢。。。

 

3.浮点数;

double x = 1.21212112, y = 10;
cout << setprecision(5) << x << " << y << endl;    //保留5位有效数字

// 小数点后5位

cout << fixed << setprecision(5) << x << " << y << endl;   //保留小数点后面5位

// 1.2121  10
// 1.21212  10.00000

常用的大概就这样吧,组合一下也差不多可以应付了。

 

2020-07-15

posted on 2020-07-15 22:19  夜_归_人  阅读(361)  评论(0编辑  收藏  举报