#include <stdio.h>
unsigned char Buff[20]={0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0A,
0x0B,0x0c,0x0d,0x0e,0x0f,0x10,0x11,0x12,0x13,0x14 };
char* FunctionDecode(char* dest,int size, int key)
{
char* pdest=dest;
for (int i=0;i<size;i++)
{
*dest^=key;
dest++;
}
return pdest;
}
char* FunctionEntry(char* dest,int size, int key)
{
char* pdest=dest;
for (int i=0;i<size;i++)
{
*dest^=key;
dest++;
}
return pdest;
}
void main()
{
// char (*pbuff)[2];
// pbuff=(char (*)[2])Buff;
// printf("%d",*(*(pbuff+2)+2)); // 2*2+2 指针指向0x7
int (*pbuff)[2];
pbuff=(int (*)[2])Buff;
printf("%x\n",*(*(pbuff+1)+2)); // 1*8+8 指针指向0x11 ,打印的就应该是0x14131211
FunctionDecode((char*)Buff,sizeof(Buff),0xff);
for (int i=0;i<sizeof(Buff);i++)
{
printf("%d ",Buff[i]);
if (i%16==0)
{
printf("\n");
}
}
printf("\n**********************************************\n");
FunctionEntry((char*)Buff,sizeof(Buff),0xff);
for (int k=0;k<sizeof(Buff);k++)
{
printf("%d ",Buff[k]);
if (k%16==0)
{
printf("\n");
}
}
}