Microsoft KB Archive/34069

From BetaArchive Wiki

Putting Global Variables in the Default Data Segment


6.00 6.00a 6.00ax 7.00 | 6.00 6.00a | 1.00 1.50 MS-DOS | OS/2 | WINDOWS kbtool ----------------------------------------------------------------------- The information in this article applies to: - The Microsoft C/C++ Compiler (CL.EXE), included with: - Microsoft C for MS-DOS, versions 6.0, 6.0a, and 6.0ax - Microsoft C for OS/2, versions 6.0 and 6.0a - Microsoft C/C++ for MS-DOS, version 7.0 - Microsoft Visual C++ for Windows, versions 1.0 and 1.5 ----------------------------------------------------------------------- The compiler places uninitialized global data in the default data segment, DGROUP, in tiny, small, and medium memory models or if the data is declared to be near. Initialized global data is placed in the default data segment for all memory models unless /Gt is used and the data is not declared to be near. In C versions 5.1 and earlier, data is declared to be near with the near keyword. In later versions, the keyword is _near. Declaring the data to be near ensures that the variable is referenced with a 16-bit address, as opposed to the far 32-bit addresses, which will make variables defined with the near keyword faster to access. Additional reference words: kbinf 1.00 1.50 6.00 6.00a 6.00ax 7.00 8.00 8.00c KBCategory: kbtool KBSubcategory: CLIss

Keywords : kb16bitonly
Issue type :
Technology : kbVCsearch kbAudDeveloper kbCVCComp

Last Reviewed: May 5, 2001
© 2001 Microsoft Corporation. All rights reserved. Terms of Use.