C++的find函数使用小技巧
一个小问题:原始字符串如CRYPT,FUNCTION,我要确定里面是否存在CRYPT,于是调用C++的find()函数,结果判断是不存在,怎么回事?
我的判断代码
if(strUseFlagsTmp.Find("CRYPT"))	lpImport->fwUse = lpImport->fwUse|WFS_PIN_USECRYPT;	//用于加密解密
代码执行完结果是fwUse中没有CRYPT值。
原因是a.find(b),如果b在a里则返回位置,不在返回string::npos。
上面语句执行完CRYPT在,返回了位置0,if去判断就是假也就是不存在了。
正确的判断语句是这样
if(strUseFlagsTmp.Find("CRYPT")==string::npos)
{}
else{
			lpImport->fwUse = lpImport->fwUse|WFS_PIN_USECRYPT;
			}
 
                    
                     
                    
                 
                    
                
 
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号