-1

如何重新分配缓冲区buf,在我下面使用的方法中?

[fileData getBytes: buf length: 1024];

在我的代码中,我将 buf 声明为 char n,其中存储 1050 个字符char buf[1050]

4

1 回答 1

1

您不能在堆栈上“重新分配”缓冲区,其大小是在编译时定义的。您将希望使用动态分配:

#define MYBUFLEN 1024
char *buf = (char *)malloc(MYBUFLEN);
[fileData getBytes:buf length:MYBUFLEN];

完成后不要忘记free()它,否则你会很快泄漏内存:

free(buf);
于 2013-07-24T10:31:46.283 回答