我正在尝试写入NSoutputStream,如下所示:
+(void)write:(char[])data
{
int size=(sizeof data) / (sizeof data[0]);
[outputStream write:(const uint8_t *)data maxLength:size];
}
这是对的吗?另外,我如何将NSInputStream读入char []。
答案 0 :(得分:2)
不,这是不对的。 Arrays are not pointers,因此sizeof()
运算符不符合您的想法。使用明确的length
参数。
(此外,sizeof(char)
始终为1,因此您无需拼写出来。)