m_slider.SetRange(0, 100000);
long int pos = m_slider.GetPos();
int pos1=pos/100000;
char str[128];
memset(str, 0, sizeof(str));
sprintf(str,"%s",pos1);
MessageBox(str);//这里的打印一直都是null
输出null的最终原因是你的pos1为0,因为你的pos的值肯定会小于等于10000,你测试的时候估计是没滑到头,所以是小于10000,pos/10000的值就为0了,
应该为double pos1 = pos/10000.0追问
应该为double pos1 = pos/10000.0追问
打印的是0
程序那里有问题吗??
温馨提示:答案为网友推荐,仅供参考
第1个回答 2011-05-03
sprintf(str,"%d",pos1);
不过肯定只能显示0
除非改为下面
doublepos1=pos/100000.0;
char str[128];
memset(str, 0, 128);
sprintf(str,"%lf",pos1);追问
不过肯定只能显示0
除非改为下面
doublepos1=pos/100000.0;
char str[128];
memset(str, 0, 128);
sprintf(str,"%lf",pos1);追问
sprintf(str,"%lf",pos1); 改了,还是0啊。。。值一样没获到啊。。。