首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

C++内存储器分配及字符串赋值

2013-03-06 
C++内存分配及字符串赋值本文介绍在Ubuntu12.10,g环境下C内存分配问题。并由此解释在用g编译时,字符串常量

C++内存分配及字符串赋值

       本文介绍在Ubuntu12.10,g++环境下C++内存分配问题。并由此解释在用g++编译时,字符串常量赋值给字符指针类型时提示“warning:deprecated conversion from string constant to 'char *'”警告的原因。

一、C++内存分配

C++内存储器分配及字符串赋值

       C++编译器将应用程序的内存空间分成四个部分,从内存低地址开始依次为:代码和常量区(用于存储只读的代码数据和常量值)、全局变量和静态变量区(用于存储全局变量和静态变量)、堆区(用于保存new、malloc申请的内存)、栈区(用于保存函数返回地址、局部变量等)。

我们将用如下代码来测试我们的假设:

char*ptrSt = (char*)malloc(sizeof(char) * 6);strcpy(ptrSt,“hello”);

Reference

1.C++内存分配方式详解——堆、栈、自由存储区、全局/静态存储区和常量存储区

2.C/C++编程:结合内存分布图分析内存问题

3.关于程序设计的内存分配问题

4.关于函数字符数组调用的问题(没有搞清指针的概念)


热点排行