C++ 中的 Visual Studio MFC:为啥“int”有效但“double”无效?

Posted

技术标签:

【中文标题】C++ 中的 Visual Studio MFC:为啥“int”有效但“double”无效?【英文标题】:Visual Studio MFC in C++: Why is "int" working but not "double"?C++ 中的 Visual Studio MFC:为什么“int”有效但“double”无效? 【发布时间】:2015-07-29 06:41:37 【问题描述】:

我正在使用 Visual Studio 2013 来构建使用 MFC 应用程序的 UI。我使用“编辑控件”来获取三个数字输入和一个按钮,该按钮将产生一个对话框,说明这些输入的值。当编辑控件框中的变量是整数时,它可以正常工作。当它们是双打时,我得到两个值的 0 和第三个随机值。这是我按下按钮的代码:

void CMFCApplication4Dlg::OnBnClickedButton2()

UpdateData();
CString temp2;
temp2.Format(_T("The frequency is %d Hz, the pulse width is %d ms, the duration is %d ms"), frequency, pulsewidth, duration);
MessageBox(temp2, 0, MB_ICONINFORMATION);

我怎样才能使这项工作适用于双打?我完成的应用程序必须进行一些需要小数的计算,因此整数不是一个选项。当我使用浮点数时,我也遇到了同样的问题。

这是我的第一个问题,我不是一个很好的程序员,所以如果这是微不足道的,我深表歉意。

【问题讨论】:

做一点网络搜索怎么样? CString::Format 【参考方案1】:

该 %d 仅适用于整数。试试%.2f。不包括最后一个时期。这应该会给你一个带两位小数的数字,但我没有用谷歌搜索任何东西,所以请检查我的语法。

【讨论】:

以上是关于C++ 中的 Visual Studio MFC:为啥“int”有效但“double”无效?的主要内容,如果未能解决你的问题,请参考以下文章

MFC 是不是仅适用于 Visual Studio,不适用于 Visual C++ Express?

如何在 Visual Studio 2017 中创建 Visual c++ MFC 控制台项目

使用 C++ 和 Visual Studio 2008 的 MFC DLL

在没有 MFC 的 Visual Studio 中拖放 UI 设计器?

Visual Studio 2008 中的非托管 C++ 单元测试

C++ 中的 XAML 桌面应用程序(Visual Studio Ultimate 2012 RC)