TestAndSetBit(int nOrder,volatile void* Var)
{
int nOldBit; _asm {
MOV EAX,Var
BTS [EAX],nOrder
MOV EAX,nOldBit
SBB nOldBit,EAX
}
return nOldBit;
}我想写一个类似LINUX的Test_And_Set_Bit的函数,用VC编译,如上,可是编译时总在编译MOV EAX,nOldBit时显示“error C2415: improper operand type”,但是注释掉MOV EAX,Var和BTS [EAX],nOrder后,可以正常编译连接不知道是怎么回事。谢谢,各位帮忙!!!