注册 登录
编程论坛 C++教室

字符串转换成条件判断语句

sunwang2 发布于 2015-12-21 07:31, 1748 次点击
这个问题以前有人问过,但我没有找到他们的解决方法,
sm是从一个编辑框中获取的字符型数字 像1,2,3这样子的字符
str=str + _T(" ") + _T("&&") + _T(" ") + _T("zdz_pl[i][7] <=") + _T(" ") ++sm;
这里sm获取的字符是55
怎样在if()当中用 转换成这样 if( zdz_pl[i][7] <=55)
6 回复
#2
rjsp2015-12-21 08:32
完全听不懂

sm是从一个编辑框中获取的字符型数字 像1,2,3这样子的字符
------ sm是数字“字符”就行了,从哪里来有关系吗?

str=str + _T(" ") + _T("&&") + _T(" ") + _T("zdz_pl[i][7] <=") + _T(" ") ++sm;
------ 这个++不明白是什么意思?

这里sm获取的字符55
------ 第一句才说sm是“字符”,怎么又变成了“字符串”

怎样在if()当中用 转换成这样 if( zdz_pl[i][7] <=55)
------- 你自己看得懂吗?


我瞎猜猜吧,你是不是想将字符串 "55" 转化为某个整型 55 ?
如果是,要么直接用windows api:GetDlgItemInt (可以取int或unsigned类型)
要么获得字符串后,用 atoi/atol/atoll/strtol/strtoll/sscanf 等标准库函数转化。
#3
sunwang22015-12-21 09:29
不好意思,++sm多写了个+,sm是字符串,我的意思是,有几十个编辑框,根据这几十个编辑框获取的值以及他们是否为空动态的组合if()中的判断语句
#4
newdos2015-12-21 17:20
你认为if(一个字符串)的结果是真还是假?
#5
sunwang22015-12-21 18:46
我的意思是当这个字符串进入if()中的括号中时转换成了条件判断语句,不再是字符串了
#6
newdos2015-12-21 19:43
字符串放if里什么都不会变,还是字符串,并不会像你想的一样会变成表达式。要想解释这字符串啥意思,只有你自己写程序解释它的意思了。
#7
sunwang22015-12-21 20:37
谢谢各位,有人建议我学习lua。我先试试
1