在程序员面试宝典中看到这两种申请内存方式,瞬间发觉自己还是too young too simply
1、char *strA()
{
char str[] = "hello word";
return str;
}
2、char *strA()
{
char* str = "hello word";
return str;
}
这两种写法具有很大的区别
第一种申请的为局部变量,当函数调用完成后,该块内存(对应于内存中的栈)就被销毁。申请的空间无法进行访问
第二种申请的为全局变量,当函数调用完成后,该块内存依然存在(存在于内存中的全局区域)。申请的空间依旧可以进行访问