我想创建一个对话框,在我的程序的开始,允许用户输入一个数字,然后在另一个函数中使用(实际上另一个C文件)在程序中很久以后。如何将变量传递给后面的程序/输入双重对话框
void function()
{
double variable;
char buf[256] = "400";
sprintf(buf, "%d", variable);
#ifdef WIN32
edit_dialog(NULL,"Enter variable", "Please enter the variable:", buf,260);
#endif
variable = atof(buf);
}
我想“变量”传递到另一个功能稍后在程序中。问题是,直到很久以后我才需要变量。我不想在每个函数之间传递它,直到它到达程序的正确部分。我该怎么做呢?
此外,当我启动这个时,我得到了对话框,但我想,但框中的数字不是400,如我所料。相反,它是2089881670(!)我以为我是正确处理内存,但不明白为什么。
尝试使用'sprintf(buf,“%lf”,&variable); ' – Mayank 2011-05-17 13:27:23