首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

内存四之代码,全局,栈和堆

C++ 在程序执行时,将内存大致分为代码,全局,栈和堆四个区域。不同的区域存储不同的数据,赋予不同的生命周期,能够更灵活地进行编程。...代码:存放函数体的二进制代码,由操作系统管理创建,代码时共享的,对于频繁被执行的程序,只需要存有一份代码即可; 全局:存放全局变量和静态变量以及常量,在程序结束后由操作系统释放; 栈:由编译其自动分配释放...,存放函数的参数值以及局部变量等; 堆:一般由程序员通过 new 开辟空间,进行分配和释放,若程序员不释放,则程序结束时由操作系统回收 下面通过一个例子对全局,栈,堆的数据声明周期进行说明: /...同理,a,b 都属于栈,d_a,d_b 都属于堆。...由于栈的数据在程序运行结束后会被编译器自动销毁,因此不要返回局部变量的地址,举例如下: int* func() { int a = 10; // 栈数据,在程序执行完之后自动释放 return

2.1K00

详解栈、堆、全局、文字常量、程序代码

注意它与数据结构中的堆是两回事,分配方式倒是类似于链表 全局(静态)(static): 全局变量和静态变量的存储是放在一块的,程序结束后由系统释放。...文字常量:常量字符串就是放在这里的。程序结束后由系统释放 程序代码:存放函数体的二进制代码。...int a = 0;//全局初始化 char *p;//全局未初始化 int main(int argc, char * argv[]) { int b;//栈 char *p1;/.../栈 char s[] = "abc";//栈 char *p2 = "123456";//"123456"在常量,p2在栈上 static int c = 0;//全局静态...,初始化 p = (char *)malloc(10);//分配得来的10和20字节的区域在堆 p1 = (char *)malloc(20);//分配得来的10和20字节的区域在堆

24610

Python实战】基于Python实现博客评论抽奖功能

前言 最近不少博主反馈,想为粉丝谋点福利,但是不知道以什么方式抽选幸运粉丝,我给他们支了个招:“可以在你的文章评论抽选”。...所以,我这个“大聪明”就用Python编写了一个评论抽选粉丝程序。为了秉行公平、公正、公开原则,本文会将抽选粉丝程序的思路以及代码的实现展示给大家,有需要的拿走不谢。...如下图 抽选规则 抽选评论中的粉丝要符合以下条件: 关注了我,即成为我的粉丝。 评论一次,权重+1,最多3次。 实现思路 首先需要获取该博客文章的所有评论者。 筛选符合条件的评论者。..., "weight":0 }, .... ], "total":2, "validTotal":2 } 接下来就可以基于Python...完整的代码 至此,基于Python实现博客评论抽奖功能就完成了。

30252
领券