Supported Data Types for the Import Shared Library Wizard
The LabVIEW Import Shared Library wizard converts the following shared library data types to the indicated LabVIEW data types.
- numeric and numeric pointer
- string and string pointer
- void and void pointer
- Boolean and Boolean pointer
- cluster and cluster pointer
For return values in the shared library functions, the Input/Output type can only be Output. The Configure VIs and Controls page of the Import Shared Library wizard displays an exclamation point icon to indicate that LabVIEW cannot process the specified data type. For data types that LabVIEW does not support, create a custom control and link to it. Refer to the Example: Importing Functions from a Shared Library File topic for more details.
Numeric
C Data Type |
Icon |
I/O Type |
LabVIEW Control Type |
Pass Type |
LabVIEW Representation |
Unsigned Representation (unsigned int) |
__int8 |
|
Input |
Numeric |
Value |
I8 |
U8 |
__int16 |
|
Input |
Numeric |
Value |
I16 |
U16 |
__int32 |
|
Input |
Numeric |
Value |
I32 |
U32 |
__int64 |
|
Input |
Numeric |
Value |
I64 |
U64 |
char |
|
Input |
Numeric |
Value |
I8 |
U8 |
short |
|
Input |
Numeric |
Value |
I16 |
U16 |
int |
|
Input |
Numeric |
Value |
I32 |
U32 |
long |
|
Input |
Numeric |
Value |
I32 |
U32 |
float |
|
Input |
Numeric |
Value |
SGL |
|
double |
|
Input |
Numeric |
Value |
DBL |
|
Numeric Pointer
C Type |
Icon |
I/O Type |
I/O Type (const int*) |
LabVIEW Control Type |
Pass Type |
LabVIEW Representation |
Unsigned Representation (unsigned int*) |
__int8 * |
|
Input/Output |
Input |
Numeric |
Pointer |
I8 |
U8 |
__int16 * |
|
Input/Output |
Input |
Numeric |
Pointer |
I16 |
U16 |
__int32 * |
|
Input/Output |
Input |
Numeric |
Pointer |
I32 |
U32 |
__int64 * |
|
Input/Output |
Input |
Numeric |
Pointer |
I64 |
U64 |
short * |
|
Input/Output |
Input |
Numeric |
Pointer |
I16 |
U16 |
int * |
|
Input/Output |
Input |
Numeric |
Pointer |
I32 |
U32 |
long * |
|
Input/Output |
Input |
Numeric |
Pointer |
I32 |
U32 |
float * |
|
Input/Output |
Input |
Numeric |
Pointer |
SGL |
|
double * |
|
Input/Output |
Input |
Numeric |
Pointer |
DBL |
|
String and String Pointer
C Type |
Icon |
I/O Type |
LabVIEW Control Type |
char* |
|
Input/Output |
String |
Char [] |
|
Input/Output |
String |
const char * |
|
Input |
String |
const char [] |
|
Input |
String |
Void and Void Pointer
C Type |
Icon |
I/O Type |
LabVIEW Control Type |
Pass Type |
LabVIEW Representation |
void |
|
void means no control is needed and can appear only as the return control |
|
|
|
void* |
|
Input/Output |
Numeric |
Value |
U32 |
const void * |
|
Input |
Numeric |
Value |
U32 |
Boolean and Boolean Pointer
C Type |
Icon |
I/O Type |
LabVIEW Control Type |
Pass Type |
bool |
|
Input |
Boolean |
Value |
bool * |
|
Input/Output |
Boolean |
Pointer |
const bool * |
|
Input |
Boolean |
Pointer |
Cluster and Cluster Pointer
C Type |
Icon |
I/O Type |
LabVIEW Control Type |
Pass Type |
struct |
|
Input |
Cluster |
Value |
Struct * |
|
Input/Output |
Cluster |
Pointer |
const struct * |
|
Input |
Cluster |
Pointer |