1

我想将 SCrypt 库添加到我的 XCode Objective-C 项目中。但是,我收到了大量以下类型的错误:

blkcpy(void * dest, void * src, size_t len)
{
    size_t * D = dest; //cannot initialize a variable of type size_t * (aka 'unsigned long) with an lvalue of type void *
    size_t * S = src;/cannot initialize a variable of type size_t * (aka 'unsigned long) with an lvalue of type void *
    size_t L = len / sizeof(size_t);
    size_t i;

    for (i = 0; i < L; i++)
        D[i] = S[i];
}

怎么办?有没有人将 scrypt 库添加到 XCode 中?

4

1 回答 1

1

将错误作为最后的注释放入代码中并没有直接用处……至少要注意您在问题中所做的事情以使其更加清晰。

正如错误所解释的那样,您不能只将 void 指针分配给其他指针类型。您需要进行强制转换,例如:

blkcpy(void * dest, void * src, size_t len)
{
    size_t * D = (size_t *)dest;
    size_t * S = (size_t *)src;
    size_t L = len / sizeof(size_t);
    size_t i;

    for (i = 0; i < L; i++)
        D[i] = S[i];
}
于 2013-11-29T12:24:08.143 回答