异或运算 之 字符串的匹配问题

简要的说一下,C语言的异或运算支持的数据类型     是   可以转化为位运算的数据类型,在C中,包括整形,字符型,以及枚举类型。

在处理字符串的匹配问题时,就可以有一种新的思路了。

将    待匹配的字符串 和  文本字符串   分别转化为      字符数组。然后进行两个字符数组的匹配(也就是异或运算)

主要意思如下,描述的可能不太精确,理解含义即可:

for(int i=0  ; i<=source.length-target.length ; i++)

   {

           if(match(i,i+target.length)==1)

          cout<<"match  successful"<<endl;

   }

int match(int i,int j)

扫描二维码关注公众号,回复: 4508833 查看本文章

    int result=0;

    for(;i<=j;i++)

   {    

          result=source[i]^targrt[i];

          if(result !=0){

             return 0;  }

    }

   return 1;

}

猜你喜欢

转载自blog.csdn.net/zenglingcheng/article/details/80193551