c++中精度控制下cout四舍五入的问题

cout<cout<输出结果为4.67(四舍五入)

double a=2.344,b=2.231;
cout<cout<输出结果为4.66(没有四舍五入)

请教一下各位这是为什么?
c++输入输出函数在精度控制下的四舍五入规则是什么?

double a=2.344,b=2.231;===我数学再差,这也不可能输出是4.66,你不要骗我

img

double a=2.344,b=2.231;
a+b=2.344+2.231=4.575
a+b哪来的4.66,四舍五入也不可能是4.66吧,不应该是4.58吗?
先不说代码哪错了,这里都已经错了!