前些天因为想参考网络文件传输去某个著名的站点下了一个关于网络文件传输的代码来研究,怀着非常崇拜的神情打开了代码,/////////////////////////////////
while(ok)//用OK来判断SOCKET是否有数据到达 是个循环接收
 { ......
   p=new char buff[1025];// char * p在前面已经定义了 固定大小的内存缓冲分配
  ......//接收1024个字符并写到文件,继续监听并判断下一次应该接收多少字符
  }//没有DEL语句
  del    buff[];
......
////////////////////////////////
我真的不明白是VC发展太快,WINDOWS现在已经聪明到可以自动判断来释放内存了还是我看迷糊了,
这个代码在某网站上被载了1XXXX次竟然没有人提出疑问,
真是PF了
///////////////////////////////////
国人写的代码,被很多网站引用

解决方案 »

  1.   

    目前认为语法都不正确。main()
    {
        char *p;
        int i = 0;
        while( i < 2 )
        {
            p = new char buff[ 1025 ];
            i++;
        }
        delete buff[];
    }ss.cpp: In function `int main ()':
    ss.cpp:7: parse error before `['
    ss.cpp:10: `buff' undeclared (first use this function)
    ss.cpp:10: (Each undeclared identifier is reported only once for each
    function it appears in.)
    ss.cpp:10: parse error before `]'