cout, 类型的格式输出

std::endl的含义

常常有 std::cout<<"test"<<std::endl,这是把test先放到标准输出流,cout会对内容进行缓冲,不会立即输出到显示器.有两种方法立即显示:加flush或endl,后者还要换行,这是在缓冲区不满时刷新.有时不加这两个关键字也能显示,是因为缓冲区满了或者长时间未输入.

precision

1
2
3
cout.precision(3);
cout<< 123.567890 <<endl;  // 124
cout<< scientific << 123.567890 <<endl; // 1.236e+02

precision是控制输出浮点数的精度,3表示四舍五入后得到3个有效数字.精度数字超出数字个数时,还按原来数字.

scientific表示科学计数法表示,此时精度数字是小数点位数

类型 标志
unit16_t %hu
unit32_t %u
unit64_t %llu
unit32_t %zu
unsigned int %u
long long int %lld
unit32_t %u
unit32_t %u