让我们考虑这样一个例子:
typedef struct {
int hours;
int minutes;
int seconds;
} Time;
Time createTime() {
Time time;
time.hours = ....
time.hours = ....
time.hours = ....
return time
}
void doSomething(){
while(true){
Time newTime = createTime();
// do something with time....
}
}
关于内存分配,我有几个问题
createTime()
方法为什么不返回 NULL?#time
是一个局部变量,因此当方法超出范围时应该被销毁。- 在
doSomething()
方法内多次调用createTime()
,会导致内存泄漏吗?