读书人

浮点数转文本与时间有关问题

发布时间: 2012-04-08 14:38:30 作者: rapoo

浮点数转文本与时间问题
高手们,我刚刚想学API写点小程序,就遇到了许多问题。我用VS2005 C++

许多大侠解答了我整数转字符串的问题,非常感谢!
按他们的方法wsprintf()转其他类型都没问题,为什么转浮点数时就显示一个“f”呢?是这样的:.....123.5687......%f..,它就输出一个“f”,数字就不见了,其他类型都正常的。

另一个问题,我要获得系统时间,转成文本输出后,年月日分秒都正常,为什么偏偏时间晚了8小时?怎么调试都不行,我只好在“SystemTime.wHour”后面“+8”,这是怎么回事?

[解决办法]
会不会%f改成%g啊!
北京时间是东八区听说过木有!!!!!有木有!!!!!
(偶尔咆哮一下)
[解决办法]
wchar_t *buff = new wchar_t[20];;
int num1 = 1234;
float num2 = 12.34;
swprintf(buff,L"%i %f",num1,num2);
wprintf(buff);

能输出,如果要控制小数点,用%.2f

如果确定要用宽字符,就都用宽的,不要一会明确是宽的,一会有看系统配置的T类型

[解决办法]

探讨
wchar_t *buff = new wchar_t[20];;
int num1 = 1234;
float num2 = 12.34;
swprintf(buff,L"%i %f",num1,num2);
wprintf(buff);

能输出,如果要控制小数点,用%.2f

如果确定要用宽字符,就都用宽的,不要一会明确是宽的,一会有看系统配置的T类型

读书人网 >C++

热点推荐