69,371
社区成员
发帖
与我相关
我的任务
分享
#define LEN 32
char Result[LEN];
char AsciiToBin(char Ascii)
{
char Bin = 0xFF;
switch(Ascii)
{
case '0':
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
case '8':
case '9':
Bin = Ascii - 0x30;
break;
case 'a':
case 'b':
case 'c':
case 'd':
case 'e':
case 'f':
Bin = Ascii - 'a' + 0x0A;
break;
case 'A':
case 'B':
case 'C':
case 'D':
case 'E':
case 'F':
Bin = Ascii - 'A' + 0x0A;
break;
}
return Bin;
}
void Fun(char *Data1, char *Data2)
{
int i;
for(i = 0; i < LEN; i++)
{
Result[i] = AsciiToBin(*(Data1 + i)) ^ AsciiToBin(*(Data2 + i));
printf("%x", Result[i]);
}
}
main()
{
char *s1 = "F2222222222222222222222222222222";
char *s2 = "00000000000000000000000000000000";
Fun(s1, s2);
}
int main(void)
{
char a[32]="1avc";
char b[32]="2de5";
char c[32];
int i;
for(i=0;i<=31;i++)
{
if(a[i]==0)
{
c[i]=0;
break;
}
c[i]=a[i]^b[i];
}
for(i=0;i<=31;i++)
{
if((a[i]==0)&&(c[i]==0))
break;
cout<<(int)c[i]<<" ";
}
cout<<endl;
return 0;
}