int CRSADlg::power(int a, int n, int m)//定义函数CRSADlg继承power
{
int z=1, t;
for(t=a; n>0; n>>=1)//让t从a开始,循环,判断条件是n>0;每次执行完成就n>>=1 就类似于 n+=1;
{
if (n%2==1) //如n为奇数z=(z*t)%m再执行t=(t*t) % m,若果为偶数,只执行t=(t*t) % m
z=(z*t)%m;
t=(t*t) % m;
}
return(z);//循环完成后 返回z的值
}
我想应该是这句你看不懂n>>=1;n=n>>1;>>是向右移1位.int占四个字节,一个字节8位