Objective-C中的错误访问/指针问题

时间:2014-10-08 14:46:13

标签: ios objective-c

我有以下代码:

Byte * tokenOut = NULL;
for (int i = 0; i < sizeof(Tknout); i++)
{
    tokenOut[i * 2] = (Tknout[i] >> 8);
    tokenOut[(i * 2) + 1] = (Tknout[i] & 0xFF);
}

但是当我尝试更新tokenOut时,它会在运行时生成EXC_BAD_ACCESS错误。如果有人能告诉我我做错了什么,我会很感激!

谢谢!

1 个答案:

答案 0 :(得分:3)

您正在取消引用NULL指针。

尝试

Byte whatever;
Byte *outToken = &whatever;
// Do the rest.

现在有足够的内存供你写信。

除非您仍然遇到问题,因为您将在变量的末尾写入。那么也许你想要一个阵列?

sizeof(outTkn)将返回1(1个字节)