位xxxx学会了麽?
#include <iostream>
using namespace std;
#define HALF_BITS_LENGTH 4
#define FULLMASK 255 //1111 1111
#define LMASK ((FULLMASK)<<(HALF_BITS_LENGTH))//1111 0000
#define RMASK ((FULLMASK)>>(HALF_BITS_LENGTH))//0000 1111
#define RSET(c,n) (c=((c&LMASK)^n))
#define LSET(c,n) (c=((c&RMASK)^(n<<HALF_BITS_LENGTH)))
#define RGET(c) (RMASK&c)
#define LGET(c) ((LMASK&c)>>HALF_BITS_LENGTH)
#define GRIDW 3
int main()
{
unsigned char c;
for (LSET(c,1);LGET(c)<(GRIDW*GRIDW);LSET(c,(LGET(c)+1)))
for (RSET(c,1);RGET(c)<GRIDW*GRIDW;RSET(c,RGET(c)+1))
{
if ((LGET(c)%GRIDW)!=(RGET(c)%GRIDW))
{
cout<<"A = "<<RGET(c);
cout<<"B = "<<LGET(c);
}
cout<<endl;
}
system("pause");
}