• 大小: 342KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-16
  • 语言: C/C++
  • 标签: S57海图  解析  

资源简介

VC++撰写的解析S57海图数据实例代码,对建立基于S57海图显示与应用系统非常有用。

资源截图

代码片段和文件信息

#include “stdafx.h“
#include “CplConv.h“
#include “CplString.h“

static char **papszConfigOptions = NULL;

/************************************************************************/
/*                             CPLCalloc()                              */
/************************************************************************/

/**
 * Safe version of calloc().
 *
 * This function is like the C library calloc() but raises a CE_Fatal
 * error with CPLError() if it fails to allocate the desired memory.  It
 * should be used for small memory allocations that are unlikely to fail
 * and for which the application is unwilling to test for out of memory
 * conditions.  It uses VSICalloc() to get the memory so any hooking of
 * VSICalloc() will apply to CPLCalloc() as well.  CPLFree() or VSIFree()
 * can be used free memory allocated by CPLCalloc().
 *
 * @param nCount number of objects to allocate.
 * @param nSize size (in bytes) of object to allocate.
 * @return pointer to newly allocated memory only NULL if nSize * nCount is
 * NULL.
 */

void *CPLCalloc( size_t nCount size_t nSize )

{
    void        *pReturn;

    if( nSize * nCount == 0 )
        return NULL;
    
    pReturn = VSICalloc( nCount nSize );
    if( pReturn == NULL )
    {
        CPLError( CE_Fatal CPLE_OutOfMemory
                  “CPLCalloc(): Out of memory allocating %d bytes.\n“
                  nSize * nCount );
    }

    return pReturn;
}

/************************************************************************/
/*                             CPLMalloc()                              */
/************************************************************************/

/**
 * Safe version of malloc().
 *
 * This function is like the C library malloc() but raises a CE_Fatal
 * error with CPLError() if it fails to allocate the desired memory.  It
 * should be used for small memory allocations that are unlikely to fail
 * and for which the application is unwilling to test for out of memory
 * conditions.  It uses VSIMalloc() to get the memory so any hooking of
 * VSIMalloc() will apply to CPLMalloc() as well.  CPLFree() or VSIFree()
 * can be used free memory allocated by CPLMalloc().
 *
 * @param nSize size (in bytes) of memory block to allocate.
 * @return pointer to newly allocated memory only NULL if nSize is zero.
 */

void *CPLMalloc( size_t nSize )

{
    void        *pReturn;

    CPLVerifyConfiguration();

    if( nSize == 0 )
        return NULL;
    
    pReturn = VSIMalloc( nSize );
    if( pReturn == NULL )
    {
        CPLError( CE_Fatal CPLE_OutOfMemory
                  “CPLMalloc(): Out of memory allocating %d bytes.\n“
                  nSize );
    }

    return pReturn;
}

/************************************************************************/
/*                             CPLRealloc()                             */
/************************************************************************/

/**
 * Safe version of realloc().
 *
 * This function i

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       3234  2006-05-21 07:54  Parse_S5744\Parse_S5744\CplConfig.h

     文件      39937  2006-05-21 07:50  Parse_S5744\Parse_S5744\CplConv.cpp

     文件       5927  2006-05-21 07:59  Parse_S5744\Parse_S5744\CplConv.h

     文件      17737  2006-05-21 07:59  Parse_S5744\Parse_S5744\CplError.cpp

     文件       2170  2006-05-21 08:51  Parse_S5744\Parse_S5744\CplError.h

     文件      10670  2006-05-21 07:54  Parse_S5744\Parse_S5744\CplPort.h

     文件      40833  2006-05-21 08:03  Parse_S5744\Parse_S5744\CplString.cpp

     文件       3709  2006-05-21 08:04  Parse_S5744\Parse_S5744\CplString.h

     文件          0  2000-11-05 00:44  Parse_S5744\Parse_S5744\CplVsi.cpp

     文件       6582  2006-05-21 07:55  Parse_S5744\Parse_S5744\CplVsi.h

     文件      11461  2006-05-21 08:08  Parse_S5744\Parse_S5744\CplVsisimple.cpp

     文件    1006148  2008-01-21 14:27  Parse_S5744\Parse_S5744\data\GB4X0000.000

     文件      10963  2006-05-21 08:21  Parse_S5744\Parse_S5744\DDFField.cpp

     文件      26737  2006-05-21 08:19  Parse_S5744\Parse_S5744\DDFFieldDefn.cpp

     文件        100  2006-05-21 01:54  Parse_S5744\Parse_S5744\DDFFieldDefn.h

     文件      23346  2006-05-21 07:59  Parse_S5744\Parse_S5744\DDFModule.cpp

     文件         91  2006-05-21 01:51  Parse_S5744\Parse_S5744\DDFModule.h

     文件      71037  2006-05-21 08:19  Parse_S5744\Parse_S5744\DDFRecord.cpp

     文件      29040  2006-05-21 08:19  Parse_S5744\Parse_S5744\DDFSubfieldDefn.cpp

     文件       2526  2006-05-21 08:27  Parse_S5744\Parse_S5744\DDFUtils.cpp

     文件          0  2000-11-05 00:44  Parse_S5744\Parse_S5744\ff.h

     文件        606  2006-05-19 07:42  Parse_S5744\Parse_S5744\FView.cpp

     文件        463  2008-02-22 10:19  Parse_S5744\Parse_S5744\FView.h

     文件       9721  2006-05-21 10:20  Parse_S5744\Parse_S5744\iso8211.h

     文件       2807  2006-05-19 08:52  Parse_S5744\Parse_S5744\MainFrm.cpp

     文件        773  2006-05-19 07:13  Parse_S5744\Parse_S5744\MainFrm.h

     文件        629  2008-02-21 21:53  Parse_S5744\Parse_S5744\mydebug.h

     文件      50836  2008-02-20 11:10  Parse_S5744\Parse_S5744\ParseS57.aps

     文件       3063  2006-05-19 07:13  Parse_S5744\Parse_S5744\ParseS57.cpp

     文件        477  2006-05-19 07:13  Parse_S5744\Parse_S5744\ParseS57.h

............此处省略7个文件信息

评论

共有 条评论