10 2013 档案
摘要:int main(){ _CrtSetDbgFlag(_CrtSetDbgFlag(_CRTDBG_REPORT_FLAG) | _CRTDBG_LEAK_CHECK_DF); _CrtSetBreakAlloc(0); new int(10);}编译运行,vs的output里会打出Detect memory leak,后面会跟一个obj id比方是532435,然后再按照下面修改程序。int main(){ _CrtSetDbgFlag(_CrtSetDbgFlag(_CRTDBG_REPORT_FLAG) | _CRTDBG_LEAK_CHECK_DF); _CrtSetBrea...
阅读全文
摘要:[转]C程序内存区域分配(5个段作用)2012-08-10 14:45:32|分类:C++基础|字号订阅参考:http://www.360doc.com/content/11/0330/21/1317564_105977930.shtmlhttp://hi.baidu.com/bitcore/blog/item/77c521c65f4512d7d10060eb.htmlhttp://apps.hi.baidu.com/share/detail/22734757http://my.oschina.net/alphajay/blog/3870一、C语言可执行代码结构名称内容代码段可执行代码、字符串
阅读全文
摘要:全局变量:1)具有外部链接性。如果你在一个.h里写 int a;,那每个包含这个头文件的文件都相当于写了这行代码,编译时就会报错“重复定义的符号”。正确的做法是在.h先声明这个变量:extern int a;然后某个一个cpp里定义它:int a = 0;。同理你在使用这个变量时可以直接包含上面的.h,也可以不包含.h,直接在cpp中声明这个变量(extern int a),然后使用它。2) 和全局静态变量一样,被分配在静态存储区。全局静态变量1)具有内部链接性。如果你在一个.h里写static int a =0;,那相当于每个包含这个头文件的文件都写了这行代码,但是不会报错,他们只是名字相同
阅读全文