在这里,我有一个基本的疑问。这里它说我不需要返回全局变量。
现在,我想知道,如果我return
是一个全局变量(让它成为char
或int
其他数据类型),它会导致什么可怕的事情?
我知道,当我return
从一个函数中获取一个变量时,该变量会立即被销毁。
这是否意味着分配给该变量的内存被取消分配/释放?有人可以阐明一下吗?
考虑以下代码:
#include<stdio.h>
int var; //a global int
int MyFuction(void)
{
int temp_var = 0;
temp_var++;
return temp_var; //it will get destroyed after returning
}
int main(void)
{
MyFunction();
var++;
return var; //Will it get destroyed here, (var being a global variable)?
}