有人可以向我解释这部分代码吗?如果我错了,请纠正我.
int *longest = malloc(sizeof(int));
*longest =0;
Run Code Online (Sandbox Code Playgroud)
这是否意味着:
malloc(4)
?是的,它可以获得足够的内存int
.你应该避免明确假设一个给定的大小 - 这将成为将来移植到其他平台的噩梦.你自己发现它 - sizeof(int)
并不总是四处都是.
不,这将值0分配给新分配的内存,这是由指向的longest
.在*
这里是引用操作,它非正式地说:"我想用的东西该指针指向工作".