簡體   English   中英

如何在C中對兩個字符串進行異或運算?

[英]How to xor two string in C?

我有2個字符串值。 str和str2。 我希望對str和str2進行異或

我的代碼是

#include <stdio.h>

int main(){
    char str[]   =  "Hello";
    char str2[]  =  "World";
    char outupt;

    output = str[] ^ str2[]; 
    printf("%s",output)   

    return 0;
}

逐個字符:

#include <stdio.h>
#include <string.h>

int main(){
  int i;
  char str[]   =  "Hello";
  char str2[]  =  "World";
  char output[6];

  for (i=0; i<strlen(str); i++)
  {
    char temp = str[i] ^ str2[i];
    output[i] = temp;
  }

  output[i] = '\0';
  printf("%s", output);

  return 0;
}

當然,您需要確保output足夠大以容納結果(包括空終止符),並且需要確定strstr2的長度不同時該怎么做。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM