我用的是VC++6.0下面那个函数在编译时出现error C2447: missing function header (old-style formal list?

来源:百度知道 编辑:UC知道 时间:2024/05/15 01:32:28
#define BitTransform(array, len, source, dest)
{
__int64 bts = source;
int bti;
dest = 0;
for(bti = 0; bti < len; bti++)
{
if(array[bti] >= 0 && (bts & g_arrayMask[array[bti]]))
{
dest |= g_arrayMask[bti];
}
}
}
请高手指点一下,是不是我装的软件有问题,或者是?

嗯,对。如果你真的想把BitTransform定义成一个宏的话,需要在每一行后面都加一个“\”。

#define BitTransform(array, len, source, dest)
这样用define开始是一个宏,不是函数

所以你下面的 { ... }就没有函数头了啊