c - 从DialogProc回调函数中获取'double'变量

时间:2017-04-20 11:38:22

标签: c windows

我正在使用Visual Studio在C中构建Windows应用程序,我需要在DialogProc回调函数中设置外部变量的值。

对于字符串变量,我使用strcpy,这是有效的。但是,当涉及到'double'类型的变量时,我会陷入困境。有人可以建议一个合适的方法吗?也许是strcpy(对于字符串)更好的替代方法?

我正在从文本框中分配变量expName,如下所示:

GetDlgItemTextA(hwnd, IDC_EDIT1, expName, 100);

然后使用strcpy将其复制到我的回调函数之外的结构中。

strcpy(myExperiment[free].name, expName);

我最初尝试myExperiment[free].name = expName;但是当函数结束时expName不再存在,所以我无法访问该值。

当函数结束时使用strcpy我仍然可以访问任何expName,但是如果输入是双精度,我不知道如何做到这一点。这就是我尝试过的(对于不同的结构):

double flowrate = GetDlgItemInt(hwnd, IDC_EDIT3, NULL, FALSE);
memcpy(&myParameters[0][0].flowrate, &flowrate, sizeof(double));

0 个答案:

没有答案