stralloc(p, ????);dll的函数里,返回一个pchar类型,长度不确定
但是在申请内存时得确定申请大小,怎么办?

解决方案 »

  1.   

    为什么给pchar分配长度,pchar是指针
      

  2.   


    只有这个办法吗?最大能有多大呢?因为是返回文件,可能有几十KB或几MB
      

  3.   

    严格的说,bdmh说的是对的,你不是给指针分配空间而是给指针要指向的数据分配空间,既然是你的dll返回的这个pchar,那显然那个dll肯定已经分配好了空间并填充了数据,你只需把指针指向它就可以了。
    你这种情况最好返回个文件句柄。
      

  4.   

    DLL 返回的PChar为什么还要分配内存?
    给你返回值 你直接使用就好了啊?Dll 返回的PChar是在DLL内部申请的内存 释放会在DLL生存周期结束后自己释放的。
    你不需要关心它的内存,直接用就OK了