_segment not defined 从 VC6 迁移到 VS2019

_segment not defined wile migrate from VC6 to VS2019

我正在将 Windows 项目从 VC6 迁移到 VS2019,但出现错误:

E0020 identifier "_segment" is undefined

我试图找到 _segment 定义,但没有成功。所以,我想知道 _segment 是否可能是 VC6 中的关键字。但是,我仍然在 Google.

中找不到任何内容

知道如何修复错误吗?谢谢

密码是:

#ifndef _MSC_Ver
#define _MSC_Ver
#endif

/* MS-C  ?? */
#ifdef  _MSC_VER
_segment SegDefine,SegType,SegSym,SegCode;
#endif

#define ALLOC_C
#include "common.h"
#include <malloc.h>
#include "extern.h"

#ifdef  MSDOS
#include <dos.h>
#ifndef __WATCOMC__
#include <memory.h>
#endif
#endif

/* MM(????)?    */
#define MaxClass    8

#ifdef  _MSC_VER    /* MS-C  ?? */

/* FARBased ? */
static USHORT       mmFarSeg[MaxClass];         /* ??         */
static USHORT       mmFarBase[MaxClass];        /*          */
static USHORT       mmFarOrg[MaxClass];         /* ??        */
static USHORT       mmFarSize[MaxClass];        /*          */

_segment 是 16 位 MSC 6 和 VC 1.x 中的关键字(不是 VC 6),与 x86 memory segmentation and _based pointers. The keyword was retired in 32-bit versions of VC, starting with VC 2.0. From Microsoft's Q67882 相关:

The following keywords were first introduced with Microsoft C version 6.0:

_based
_segment

[...]

NOTE: In Microsoft Visual C++ 32-bit Edition, version 2.0, the _segment keyword was removed and the functionality of the __based keyword changed.