首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

如何分配不了内存空间

2012-02-14 
怎么分配不了内存空间?做一C++改C的项目,把类改成结构,在一段代码中,第一个更改成功,并分对定义的类分配了

怎么分配不了内存空间?
做一C++改C的项目,把类改成结构,在一段代码中,第一个更改成功,并分对定义的类分配了空间,在改每二个时,刚一分配空间就报错,把代码单独提到另外的程序中又可以.

这是提出来的代码,可以运行.有没有哪位高手指点一下.
#ifndef   __AA__
#define   __AA__

typedef   struct                     //class   DATADOT     //data   dot   description
{
        short                     x;       //x-coordinate   of   dot   center
        short                     y;       //y-coordinate   of   dot   center
        short                     d;       //diamater   of   dot
        short                     len;   //length   of   path
        char                       clr;   //color   of   dot
        char                       grp;   //Group   label
        unsigned   short   d2c;   //distance   to   image   center,   ATTENTION   the   overflow   !!!
}DATADOT;

typedef   struct                             //CDataDotsVerifier
{
        unsigned   char*   m_pImage;
        short                     m_nWidth;
        short                     m_nHeight;

        DATADOT*               m_pDataDot;
        short                     m_nDataDotNum;
}CDataDotsVerifier;
#endif

main()
{
      DATADOT   *dot;
dot=(DATADOT*)malloc(sizeof(DATADOT));

CDataDotsVerifier   *ddv;     //CDataDotsVerifier   ddv(m_pBuf1,   w,   h);
ddv   =   (CDataDotsVerifier*)malloc(sizeof(CDataDotsVerifier));

free(dot);
free(ddv);  
    return   0;
}

[解决办法]
free(ddv);
free(dot);
再试试!好像是不允许骑跨!
[解决办法]
程序本身没有错,
把有错的地方贴出来看看
还有报错的内容
[解决办法]
你的编译器c的语法检查强不强?
dot=(DATADOT*)malloc(sizeof(DATADOT));
CDataDotsVerifier *ddv; //CDataDotsVerifier ddv(m_pBuf1, w, h);

如果变量申明在
dot=(DATADOT*)malloc(sizeof(DATADOT));之后
会出[声明地方出错]警告

热点排行