随笔分类 - c/c++
摘要:原文:http://www.cnblogs.com/ComputerG/archive/2012/02/01/2334898.html一:C语言中的内存机制在C语言中,内存主要分为如下5个存储区:(1)栈(Stack):位于函数内的局部变量(包括函数实参),由编译器负责分配释放,函数结束,栈变量失效。(2)堆(Heap):由程序员用malloc/calloc/realloc分配,free释放。如果程序员忘记free了,则会造成内存泄露,程序结束时该片内存会由OS回收。(3)全局区/静态区(Global Static Area): 全局变量和静态变量存放区,程序一经编译好,该区域便存在。并且在C
阅读全文
摘要:很多学软件的朋友需要做C语言链表应用的课程设计,下面是我写的代码,希望对需要的人有些帮助。。。希望和大家交流一下,更希望高手指点。。已经经过(turboC 2.0编译通过)。#include <stdio.h>#include <stdlib.h>#define LEN sizeof(struct student)#define NULL 0struct student { int number; int score; struct student*next;};struct student*create() { struct s...
阅读全文
摘要:#include#includemain(){ int *p,count; scanf("%d",&count); p=(int*)malloc(count*sizeof(int)); for(int i=0;i p[i]=i; for(int j=0;j printf("%d",p[j]);}
阅读全文
摘要:通过动态内存分配实现c语言动态指针"数组".其实这种结构并非是一种数组,只是手动实现的一种类似数组的结构,实现类似数组的功能。应该可以说是一种伪数组结构吧。#include <stdio.h>#include <stdlib.h>main(){ char**p; int count,j,i; p=0; scanf("%d",&count); p=(char**)calloc(count,sizeof(char*)); for(j=0;j<count;j++) p[j]=(char*)malloc(10*sizeof(
阅读全文
摘要:#include <stdio.h>#include <stdlib.h>#define SHI sizeof(struct duoxiangshi)#define NULL 0struct duoxiangshi{int xishu,zhishu; struct duoxiangshi*next;};struct duoxiangshi*create() {struct duoxiangshi*head,*p1,*p2; int n; n=0; head=NULL; p2=NULL; p1=NULL; p1=(struct duoxiangshi*)mal...
阅读全文
摘要:接口文件poly.h#ifndef POLY_H#define POLY_H#include <iostream>#include <cstdlib>#include <cstddef>using namespace std;typedef int* intptr;class poly{public: poly(); poly(int a); poly(const poly& p); ~poly(); void creat(); friend poly operator +(const poly& p1,const poly& p2)
阅读全文
摘要:如何组织编写模板程序前言常遇到询问使用模板到底是否容易的问题,我的回答是:“模板的使用是容易的,但组织编写却不容易”。看看我们几乎每天都能遇到的模板类吧,如STL, ATL, WTL, 以及Boost的模板类,都能体会到这样的滋味:接口简单,操作复杂。我在5年前开始使用模板,那时我看到了MFC的容器类。直到去年我还没有必要自己编写模板类。可是在我需要自己编写模板类时,我首先遇到的事实却是“传统”编程方法(在*.h文件声明,在*.cpp文件中定义)不能用于模板。于是我花费一些时间来了解问题所在及其解决方法。本文对象是那些熟悉模板但还没有很多编写模板经验的程序员。本文只涉及模板类,未涉及模板函数。
阅读全文
摘要:STDMETHOD_是一个宏,用于定义指定返回类型的接口方法,包含virtual关键字。可用于定义方法声明。 #define STDMETHOD_(type,menthod) virtual type STDMETHODCALLTYPE menthod 例如: STDMETHOD_ (ULONG, release)()展开后就是 virtual ULONG STDMETHODCALLTYPE release() STDMETHODCALLTYPE 宏展开是 __stdcall。#define STDMETHOD(method) virtual HRESULT STDMETHODCALLTYPE
阅读全文
摘要:原文:http://blog.csdn.net/chjp2046/article/details/5460462使用 std::stringstream,小心 内存! 适时 清空 缓冲 ……2007年12月14日 星期五 16:25stringstream是个好东西,网上有不少文章,讨论如何用它实现各种数据类型的转换(比如把double或int转换为string类型)。但如果stringstream使用不当,当心内存出问题(我就吃过亏^_^)。试试下面的代码,运行程序前打开任务管理器,过不了几十秒,所有的内存都将被耗尽!#include <cstdlib>#include <
阅读全文