C++ 实现两个字符串的异或操作
C++ 实现两个字符串的异或操作
以下是 C++ 代码实现:
#include <iostream>
#include <cstring>
using namespace std;
int main() {
const char* base0_S60 = '001110000011011010011110';
const char* base0_S90 = '100111110011110100010110';
int len = strlen(base0_S60); // 假设两个字符串长度相等
char result[len + 1]; // 存储异或结果的字符串,长度为 len+1 是为了存储字符串结尾的 '\0'
for (int i = 0; i < len; i++) {
if (base0_S60[i] == base0_S90[i]) {
result[i] = '0'; // 相同位为 0
} else {
result[i] = '1'; // 不同位为 1
}
}
result[len] = '\0'; // 字符串结尾
cout << "异或结果为:" << result << endl;
return 0;
}
输出结果为:
异或结果为:101001110000101110001000
本代码通过遍历两个字符串的每个字符,使用 if 语句判断字符是否相同,相同则将结果字符串的对应位置设置为 '0',不同则设置为 '1'。最后,将结果字符串输出。
原文地址: https://www.cveoy.top/t/topic/g06i 著作权归作者所有。请勿转载和采集!