给点思路 CString tem("xxx=00:打开,xxx=01:关闭,xxx=02:终止");外部得到一个xxx的值和tem里的数做比较,如果=00就显示“打开”,如果=01就显示“关闭”,如果=02就显示“终止”!如何做到呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 char* psz[] = {"打开","关闭","宗旨"}int item = 0;for(item=0; item<3;item++) printf("%s\n",*(psz[item])); //item 00就是零零:)假如xxx=00,我就在屏幕上显示打开,如果等于01,我就显示关闭(我的思路是遍历整个tem)但太耗时了! sscanf()等查找分割":" 和";" ,然后分别截取子字符串,获取对应的数据 CString strItemValue;strItemValue.Format(_T("%d"), nValue);//nValue就是传入的外部INT值。if(tem.Compare(strItemValue) == 0) CString 的比较用其方法Compare 相等为0{ //} 这个完全不对我思路啊,没这么简单,实际情况比这个复杂,我只是举了个简单例子,如果是这样呢CString tem("xxx=00:打开,xxx=03:关闭,xxx=05:终止"); 干脆使用CMap好了CMap<UINT,CString> CString tem("xxx=00:打开,xxx=01:关闭,xxx=02:终止"); int iYourEnter=1;//XXX的值,我定义的是整型。你自己可以改 CString xxx=_T(""); if(iYourEnter<10) xxx.Format("xxx=0%d",iYourEnter);//xxx的值,相对应的也要改%d else xxx.Format("xxx=%d",iYourEnter); int i=0; i=tem.Find(xxx,0); CString getVaule=_T(""); if(i>0) { i=tem.Find(":",i); getVaule=tem.Mid(i+1,4); }else getVaule="没找到"; TRACE("%s",getVaule); int index[3] = {0,3,5};char content[3] ={"打开","关闭,"终止"};for(...){if(input = index[i]){str.format("%s",content[index[i]])}}这样呢?ps:楼主什么电脑?遍历个这玩意都费劲?还是表太大! (菜鸟求助)关于取得BMP的HSI值 connect是的错误 请问用在OpenGL编程中有哪些方法可以得到两个曲面的交线? UDP超时的问题,请来看一下。 添加一个矩形框用什么函数,在上面添加文字、颜色呢? 在SDI中有关共享变量的问题? 视图切换后的打印问题 一个小问题:串口编程中WaitCommEvent的用法? SHFileOperation操作:给pFrom赋值时加入变量就出错 ListCtrl中能不能有独立的colume? 服务里启动其他进程的问题 vc6编写的程序在win7下需要管理员权限才能运行
"打开",
"关闭",
"宗旨"
}int item = 0;
for(item=0; item<3;item++)
printf("%s\n",*(psz[item])); //item
00就是零零:)假如xxx=00,我就在屏幕上显示打开,如果等于01,我就显示关闭(我的思路是遍历整个tem)但太耗时了!
CString strItemValue;
strItemValue.Format(_T("%d"), nValue);//nValue就是传入的外部INT值。if(tem.Compare(strItemValue) == 0) CString 的比较用其方法Compare 相等为0
{
//
}
这个完全不对我思路啊,没这么简单,实际情况比这个复杂,我只是举了个简单例子,如果是这样呢CString tem("xxx=00:打开,xxx=03:关闭,xxx=05:终止");
CMap<UINT,CString>
int iYourEnter=1;//XXX的值,我定义的是整型。你自己可以改
CString xxx=_T("");
if(iYourEnter<10)
xxx.Format("xxx=0%d",iYourEnter);//xxx的值,相对应的也要改%d
else
xxx.Format("xxx=%d",iYourEnter);
int i=0;
i=tem.Find(xxx,0);
CString getVaule=_T("");
if(i>0)
{
i=tem.Find(":",i);
getVaule=tem.Mid(i+1,4);
}else
getVaule="没找到"; TRACE("%s",getVaule);
char content[3] ={"打开","关闭,"终止"};
for(...)
{
if(input = index[i])
{
str.format("%s",content[index[i]])
}
}
这样呢?
ps:
楼主什么电脑?遍历个这玩意都费劲?
还是表太大!