文章
2976
标签
100
分类
63
首页
时间轴
标签
分类
知识库
关于
友链
Estom的博客
7.C++函数调用栈
返回首页
搜索
首页
时间轴
标签
分类
知识库
关于
友链
7.C++函数调用栈
发表于
2021-03-04
|
更新于
2021-03-04
|
C++
|
总字数:
1
|
阅读时长:
1分钟
|
浏览量:
1
文章作者:
Estom
文章链接:
https://estom.github.io/2021/03/03/C++/%E9%9D%A2%E8%AF%95/7.C++%E5%87%BD%E6%95%B0%E8%B0%83%E7%94%A8%E6%A0%88/
版权声明:
本博客所有文章除特别声明外,均采用
CC BY-NC-SA 4.0
许可协议。转载请注明来源
Estom的博客
!
上一篇
9.风格转换
1 字符串转换C 字符串转 string12str ="helloworld";string s(str); string 转 C 风格字符串12string s("helloworld");const char * str = s.c_str(); 2 数组转换 数组也是 C++中很重要的复杂类型之一。vector 是对象类型。可以不用相互转换。C++支持数组的迭代器运算。建议尽量使用标准库类型,而非数组。 数组转 vector123int arr[] = { 1,2,3,5,5,8,2,6};vector<int> vec(arr, arr+sizeof(arr)/sizeof(int));vector<int> vec2(begin(arr),end(arr));//使用数组初始化vector vector 转数组由于 vector 内部的数据是存放在连续的存储空间,vector 转数组事实上只需要获取 vector 中第一个数据的地址和数据的长度即可。如果仅仅是传参,无需任何操作,...
下一篇
5.C++内存分配
内存分配内存分配示意图 Unused Memory:用于程序代码块对齐Read-only code segment:只读,存代码和一些其他的东西 Read/Write data segment: .data:存初始化的全局变量和static变量,另外还有文字常量区,常量字符串就是放在这里,程序结束后有系统释放 .bss:存未初始化的全局变量和static变量 Heap:通过new和malloc由低到高分配,由delete或free手动释放或者程序结束自动释放 Shared libraries:调用的库文件,位于堆和栈之间 Stack:由高向低增长,和堆的增长方式相对,对不同的OS来说,栈的初始大小有规定,可以修改,目前默认一般为2M,由编译器自动分配释放 Kernel virtual memory:用户不可见不能访问 内存分配说明C/C++编译的程序所占用内存区域一般分为以下5个部分: 栈区(stack):由编译器自动分配和释放,用来存放函数的参数、局部变量等。其操作方式类似于数据结构中的栈。 堆区(heap):一般由程序员分配和释放(通过mallo...
Estom
也许那年在绿色的麦浪中奔跑的时候,就注定了我此生的繁华与悲叹
文章
2976
标签
100
分类
63
关注
公告
欢迎参观Estom的小屋
目录
1.
1
最新文章
自引用泛型概述
2025-12-21
02 集合底层结构
2025-12-18
11 Arrays和Collections
2025-12-18
06 JUC并发容器
2025-12-18
30 问题排查和性能优化指南
2025-09-14
搜索
数据加载中