1)图中的全局变量、静态数据需要长期存在,程序启动时分配,程序结束时释放
(2) localVar、num1[10]、char2[ ]、pChar3、ptr1、ptr2、ptr3这些变量在函数调用时分配,函 数结束时自动释放,随着函数开辟,因此存储在栈区
(3)pChar3指针指向的“abcd”属于字符串、char2的字符数组,属于只读类,因此存储在代码段
(4)malloc、realloc、calloc开辟的内存空间不受函数控制,需要手动释放,固在堆区
问:为什么指针、以及对应后面的数据需要分开存储?(雷区:误以为整行语句在同一个空间)
(1)首先指针本身就是一个变量(指针变量),存储指向后面数据的地址,它的生命周期遵循局 部变量规则,固存储在栈区
(2)同理 num1【】是一个局部数组变量,它的生命周期也是随当前函数开辟释放
(3)而字符指针指向的字符串数据内容属于只读需要,固存储在代码段更好
总结:通过高效的内存分配方式,不断提高程序的性能和安全性
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/Dovis5884/article/details/148200757
1)图中的全局变量、静态数据需要长期存在,程序启动时分配,程序结束时释放
(2) localVar、num1[10]、char2[ ]、pChar3、ptr1、ptr2、ptr3这些变量在函数调用时分配,函 数结束时自动释放,随着函数开辟,因此存储在栈区
(3)pChar3指针指向的“abcd”属于字符串、char2的字符数组,属于只读类,因此存储在代码段
(4)malloc、realloc、calloc开辟的内存空间不受函数控制,需要手动释放,固在堆区
问:为什么指针、以及对应后面的数据需要分开存储?(雷区:误以为整行语句在同一个空间)
(1)首先指针本身就是一个变量(指针变量),存储指向后面数据的地址,它的生命周期遵循局 部变量规则,固存储在栈区
(2)同理 num1【】是一个局部数组变量,它的生命周期也是随当前函数开辟释放
(3)而字符指针指向的字符串数据内容属于只读需要,固存储在代码段更好
总结:通过高效的内存分配方式,不断提高程序的性能和安全性
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/Dovis5884/article/details/148200757
1)图中的全局变量、静态数据需要长期存在,程序启动时分配,程序结束时释放
(2) localVar、num1[10]、char2[ ]、pChar3、ptr1、ptr2、ptr3这些变量在函数调用时分配,函 数结束时自动释放,随着函数开辟,因此存储在栈区
(3)pChar3指针指向的“abcd”属于字符串、char2的字符数组,属于只读类,因此存储在代码段
(4)malloc、realloc、calloc开辟的内存空间不受函数控制,需要手动释放,固在堆区
问:为什么指针、以及对应后面的数据需要分开存储?(雷区:误以为整行语句在同一个空间)
(1)首先指针本身就是一个变量(指针变量),存储指向后面数据的地址,它的生命周期遵循局 部变量规则,固存储在栈区
(2)同理 num1【】是一个局部数组变量,它的生命周期也是随当前函数开辟释放
(3)而字符指针指向的字符串数据内容属于只读需要,固存储在代码段更好
总结:通过高效的内存分配方式,不断提高程序的性能和安全性
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/Dovis5884/article/details/148200757
1)图中的全局变量、静态数据需要长期存在,程序启动时分配,程序结束时释放
(2) localVar、num1[10]、char2[ ]、pChar3、ptr1、ptr2、ptr3这些变量在函数调用时分配,函 数结束时自动释放,随着函数开辟,因此存储在栈区
(3)pChar3指针指向的“abcd”属于字符串、char2的字符数组,属于只读类,因此存储在代码段
(4)malloc、realloc、calloc开辟的内存空间不受函数控制,需要手动释放,固在堆区
问:为什么指针、以及对应后面的数据需要分开存储?(雷区:误以为整行语句在同一个空间)
(1)首先指针本身就是一个变量(指针变量),存储指向后面数据的地址,它的生命周期遵循局 部变量规则,固存储在栈区
(2)同理 num1【】是一个局部数组变量,它的生命周期也是随当前函数开辟释放
(3)而字符指针指向的字符串数据内容属于只读需要,固存储在代码段更好
总结:通过高效的内存分配方式,不断提高程序的性能和安全性
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/Dovis5884/article/details/148200757