在C++中,float或者double类型的浮点数全部以固定的形式(浮点存储,占用8个字节等)存储在计算机中,这是无法改变的,所以对这些数据的运算等,所得到的结果在计算机中也是以同样的格式进行存储。既然在数据的物理存储格式上不可能进行改变,所以唯一可以改变的只有与用户交互的界面,包括接收用户输入的字符串转化为相应的float或者double类型,或者将float或者double类型数据展示给用户看,只有在这两种情况下可以对float或者double类型数据进行修正,对于不是输出到控制台的情况,如windows桌面应用程序等,此时可以使用C++所提供的stringstream库接收用户输入的字符串并进行一定的修正之后存储为相应的float或者double类型的数据或者将float或者double类型的数据输出到窗口上:
ss.setf(ios::fixed,ios::floatfield);//一律设置为非浮点数格式
ss.precision(2);//保留两位小数
ss<<要转换的变量,字符串或者float(double)类型
ss>>转换后的变量,float(double)或者字符串类型