晕了,怎么回事啊
											
程序代码:void F_func(bool In[32],const bool Ki[48])
{
     static bool  MR[48];
     Transform(MR,In,Extension_Table,48);//扩展成48位
     Xor(MR,Ki,48);//与子密钥进行异或运算
     S_func(In,MR);//S盒代换,处理后变成32位
     Transform(In,In,P_Table,32);//P置换
}
void DES(char Out[8],char In[8],const bool Ki[48],bool Type)
{
     static bool M[64],tmp[32],*Li=&M[0],*Ri=&M[32];
     ByteToBit(M,In,64);
     Transform(M,M,IP_Table,64);
     if(Type==ENCRYPT)
     {
         for(int i=0;i<16;i++)
         {
             memcpy(tmp,Ri,32);
             F_func(Ri,Ki[i]);//提示这里出错了,怎么回事?
             Xor(Ri,Li,32);
             memcpy(Li,tmp,32);
         }
     }
     else
     {
         for(int i=15;i>=0;i--)
         {
             memcpy(tmp,Li,32);
             F_func(Li,Ki[i]);
             Xor(Li,Ri,32);
             memcpy(Ri,tmp,32);
         }
     }
     Transform(M,M,IP1_Table,64);
     BitToByte(Out,M,64);
}错误提示:我只是把代码出错的地方弄出来了,赶紧给看看哪里错了,急啊!



											
	    

	


