National Instruments Drums 320685D-01 ユーザーズマニュアル
Chapter 1
LabWindows/CVI Compiler
©
National Instruments Corporation
1-3
LabWindows/CVI Programmer Reference Manual
however, set options to cause the calling convention to default to __
stdcall
. The behavior
is the same in LabWindows/CVI. You can set the default calling convention to either __
cdecl
or
__stdcall
using the Compiler Options command in the Options menu of the Project
window. When you create a new project, the default calling convention is
__cdecl
.
In Watcom C/C++, the default calling convention is not __
cdecl
or
__stdcall
. You must
use the
-4s
(80486 Stack-Based Calling) option when you compile a module in Watcom for
use in LabWindows/CVI. Refer to the
section in
Chapter 3,
. The
-4s
option causes the stack-based
calling convention to be the default. In LabWindows/CVI under Watcom compatibility mode,
the default calling convention is always the stack-based convention. It cannot be changed. The
LabWindows/CVI compiler accepts the
the default calling convention is always the stack-based convention. It cannot be changed. The
LabWindows/CVI compiler accepts the
__cdecl
and
__stdcall
conventions under
Watcom, except that floating point and structure return values do not work in the
__cdecl
calling convention. National Instruments recommends that you avoid using
__cdecl
with
Watcom.
In the
__cdecl
calling convention and the Watcom stack-based calling convention, the
calling function is responsible for cleaning up the stack. Functions can have a variable number
of arguments.
of arguments.
In the
__stdcall
calling convention, the called function is responsible for cleaning up the
stack. Functions with a variable number of arguments do not work in
__stdcall
. If you use
the
__stdcall
qualifier on a function with a variable number of arguments,
LabWindows/CVI does not honor the qualifier. All compilers pass parameters and return
values in the same way for
values in the same way for
__stdcall
functions, except for floating point and structure
return values.
National Instruments recommends the
__stdcall
calling convention for all functions
exported from a DLL, except functions with a variable number of arguments. Visual Basic
and other non-C Windows programs expect DLL functions to be
and other non-C Windows programs expect DLL functions to be
__stdcall
.
Import and Export Qualifiers
You can use the following qualifiers in variable and function declarations:
__declspec(dllimport)
__declspec(dllexport)
__import
__export
_import
_export
00ProRef.book : 06chap01.fm Page 3 Monday, March 9, 1998 3:23 PM