Microsoft KB Archive/37233

From BetaArchive Wiki
< Microsoft KB Archive
Revision as of 16:55, 18 July 2020 by 3155ffGd (talk | contribs) (importing KB archive)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Knowledge Base


INFO: Why System Include Files Prototype Functions as _cdecl

Article ID: 37233

Article Last Modified on 7/5/2005



APPLIES TO

  • Microsoft C Professional Development System 6.0a
  • Microsoft Visual C++ 1.0 Professional Edition
  • Microsoft Visual C++ 1.5 Professional Edition
  • Microsoft Visual C++ 1.51
  • Microsoft Visual C++ 1.52 Professional Edition
  • Microsoft Visual C++ 2.0 Professional Edition
  • Microsoft Visual C++ 2.1
  • Microsoft Visual C++ 4.0 Standard Edition
  • Microsoft Visual C++ 5.0 Enterprise Edition
  • Microsoft Visual C++ 6.0 Enterprise Edition
  • Microsoft Visual C++ 5.0 Professional Edition
  • Microsoft Visual C++ 6.0 Professional Edition
  • Microsoft Visual C++ 6.0 Standard Edition



This article was previously published under Q37233


SUMMARY

The system include files declare functions that use the C calling and naming conventions with the attribute "cdecl".

The compiler uses the C calling and naming conventions by default unless the compiler command line specifies the /Gc or /Gz option switches. The /Gc switch instructs the compiler to use the Pascal (FORTRAN) calling convention by default. The 32-bit compilers do not support the /Gc option switch; they use the /Gz option switch that instructs the compiler to use the __stdcall calling and naming convention by default.

The "cdecl" attribute instructs the compiler to generate run-time library calls using the C calling and naming conventions even when the command line specifies the /Gc or /Gz option.

Keywords: kbinfo kblangc KB37233