跟随着潮流,弱弱的学习了一下主席树。明白了思想之后,第一次比较快的自己写出了代码。cogs930找第K小的数题目大意:静态区间第K小的查询。思路:裸裸的主席树模板题。#include#include#include#includeusing namespace std;struct Node{ .....
分类:
其他好文 时间:
2015-03-18 17:28:53
阅读次数:
130
代码区
代码区code,程序被操作系统加载到内存的时候,所有的可执行代码都加载到代码区,也叫代码段,这块内存是不可以在运行期间修改的。
静态区
所有的全局变量以及程序中的静态变量都存储到静态区,比较如下两段代码的区别
#include
int a = 0;
int main()
{
static int b = 0;
printf("%p, %p\n", &...
分类:
其他好文 时间:
2015-03-17 21:57:27
阅读次数:
241
在计算机系统中,运行的应用程序的数据都保存在内存中,不同类型的数据所保存在的区域不同,应用程序中总共有五个内存区域:
(1)、栈区【stack】:由编译器自动分配并释放,一般存放函数的参数值,局部变量等
(2)、堆区【heap】:由程序员分配和释放内存,如果程序员不释放,程序结束时,可能会由操作系统回收
(3)、全局区【静态区】【static】:全局变量和静态变量的存储是放在一起的,而该区又...
分类:
其他好文 时间:
2015-03-17 21:53:30
阅读次数:
139
①strlen()函数作用:计算字符串的长度,当遇到“\n”字符时结束,即遇到数值“0”时结束计算,有一点特别要注意当这个函数用来计算数组的长度的时候遇到数值0他就停止计算了!
②register关键字修饰的变量不可以使用“&”取地址符来获取地址,因为它可能不在内存。
③ 问:“static”关键字修饰的变量能被改变不?
答:肯定可以,它在编译的时候放在静态区,...
分类:
编程语言 时间:
2015-03-16 01:01:48
阅读次数:
325
一个由c/C++编译的程序占用的内存分为以下几个部分
1、栈区(stack)―由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。
2、堆区(heap)―一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。
3、全局区(静态区)(static)―,全局变量和静态变量的存储...
分类:
其他好文 时间:
2015-03-13 14:25:39
阅读次数:
177
静态区:保存自动全局变量和static变量(包括static全局和局部变量)...
分类:
其他好文 时间:
2015-03-03 11:46:37
阅读次数:
123
C++拾遗--定位new表达式
前言
new表达式,默认下把内存开辟到堆区。使用定位new表达式,可以在指定地址区域(栈区、堆区、静态区)构造对象,这好比是把内存开辟到指定区域。
正文
定位new表达式的常见形式...
分类:
编程语言 时间:
2015-02-21 21:06:11
阅读次数:
226
1.内存分配区间: 对于一个C语言程序而言,内存空间主要由五个部分组成:代码段(.text)、数据段(.data)、静态区(.BSS)、堆和栈组成。 BSS段:BSS段(bss segment)通常是指用来存放程序中未初始化的全局变量和静态变量(这里注意一个问题:一般的书上都会说全局变量和...
分类:
编程语言 时间:
2015-02-08 23:10:19
阅读次数:
309
内存中的五个区:代码区,常量区,全局区(静态区),堆区,栈区
分类:
其他好文 时间:
2015-02-07 11:42:13
阅读次数:
159
程序运行的时候需要为程序的每一部分开辟内存空间来存放。可具体分为五个部分:栈:存放的是函数的参数值,局部变量的值,编译器自动分配和释放。堆:存放的内容由程序员自己安排。.Net中有GC回收,C++中需要程序员自己释放。全局区(静态区):全局变量和静态变量存放区,初始化的全局变量和静态变量都放在这个区...
分类:
其他好文 时间:
2015-02-01 10:45:13
阅读次数:
165