The LabVIEW Import Shared Library wizard converts the following shared library data types to the indicated LabVIEW data types.
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.
| 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 |
| 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 |
| 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 |
| 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 |
| 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 |
| 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 |