刚接触oc,遇到一个问题,请明白的讲讲道理。
示例代码如下:
1. 在CMData类里声明了一个字节数组的属性:
@property(nonatomic, assign) Byte * commandData;
- 在其他类中测试调用:
const Byte buffer[] = {1,2,3,4,5,6,7,8,9,10};
CMData * data = [[CMData alloc] init];
data.commandData = buffer;
- 打印结果
NSLog(@"-->%@", [Helper ByteArrayToString:data.commandData andWith:sizeof(data.commandData)]);
结果是只有buffer中的前8个:
1,2,3,4,5,6,7,8
这种情况,不管是函数传参数还是返回值都是这样,这是什么原因?
但如果在声明完const Byte buffer[] = {1,2,3,4,5,6,7,8,9,10};后,直接sizeof buffer 是 10个。
对指针还是不太了解,请大家解答下,谢谢。