怎樣將C語言聲明轉換爲VB聲明

在文檔中,通常使用 C 語言的語法描述 DLL 中的過程。要在 Visual Basic 中調用這些過程,需要將它們轉換成合法的 Declare 語句,並使用正確的參數調用它們。

在進行這種轉換時,必須將 C 數據類型轉換爲 Visual Basic 的數據類型,並且說明每個參數是以使用值的 (ByVal) 方式,還是使用引用的 (ByRef)(缺省)方式。下表針對常用的 C 語言數據類型列出了與之等價的 Visual Basic 類型(用于 32 位版本的 Windows)。

C 語言數據類型

在 Visual Basic 中聲明爲

調用時使用的表達式

ATOM

ByVal variable As Integer

結果爲 Integer 類型的表達式

BOOL

ByVal variable As Long

結果爲 Long 類型的表達式

BYTE

ByVal variable As Byte

結果爲 Byte 類型的表達式

CHAR

ByVal variable As Byte

結果爲 Byte 類型的表達式

COLORREF

ByVal variable As Long

結果爲 Long 類型的表達式

DWord

ByVal variable As Long

結果爲 Long 類型的表達式

HWND, HDC, HMENU 等。(Windows 句柄)

ByVal variable As Long

結果爲 Long 類型的表達式

INT, UINT

ByVal variable As Long

結果爲 Long 類型的表達式

LONG

ByVal variable As Long

結果爲 Long 類型的表達式

LPARAM

ByVal variable As Long

結果爲 Long 類型的表達式

LPDWORD

variable As Long

結果爲 Long 類型的表達式

LPINT, LPUINT

variable As Long

結果爲 Long 類型的表達式

LPRECT

variable As type

自定義類型的任意變量

LPSTR, LPCSTR

ByVal variable As String

結果爲 String 類型的表達式

LPVOID

variable As Any

任何變量(在傳遞字符串的時候使用 ByVal)

LPWORD

variable As Integer

結果爲 Integer 類型的表達式

LRESULT

ByVal variable As Long

結果爲 Long 類型的表達式

NULL

As Any 或

ByVal variable As Long

ByVal Nothing 或 ByVal 0& 或 vbNullString

SHORT

ByVal variable As Integer

結果爲 Integer 類型的表達式

VOID

Sub procedure

不可用

WORD

ByVal variable As Integer

結果爲 Integer 類型的表達式

WPARAM

ByVal variable As Long

結果爲 Long 類型的表達式

vb 常量聲明
1.VisualBasic數據類型 2.變量的聲明 3.Option Explicit 關鍵字 4.變量的作用域 5.Static 關鍵字 6.常量 7.數據類型轉換 VisualBasic數據類型 數據類型 舉例 字節型 56 布爾型 True False 整型 5367 長整型 4364574 ...查看完整版>>vb 常量聲明
 
vb 常量聲明
1.VisualBasic數據類型 2.變量的聲明 3.Option Explicit 關鍵字 4.變量的作用域 5.Static 關鍵字 6.常量 7.數據類型轉換 VisualBasic數據類型 數據類型 舉例 字節型 56 布爾型 True False 整型 5367 長整型 4364574 ...查看完整版>>vb 常量聲明
 
水滴石穿C語言之extern聲明辨析
水滴石穿C語言之extern聲明辨析
1 基本解釋  extern可以置于變量或者函數前,以標示變量或者函數的定義在別的文件中,提示編譯器碰到此變量和函數時在其他模塊中尋找其定義。  另外,extern也可用來進行鏈接指定。  2 問題:extern 變量  在...查看完整版>>水滴石穿C語言之extern聲明辨析
 
在VB中通過串行口進行A/D轉換
李芳影 天津大學自動化學院 (天津 300000)一般的計算機測量系統中都需要配備一塊專用的數據采集接口卡,在我們研制的平均粒度測定儀中同樣也需有一塊數據采集接口卡。那麽,能否利用微機現有的串行接口對這種對速度要...查看完整版>>在VB中通過串行口進行A/D轉換
 
公農曆轉換VB類
網上流傳很多計算公農曆的源代碼,很多,但是居然沒有VB的,暈, 所以。。。。。 用法: 以l開始的方法均爲陰曆,以s開始的方法均爲公曆 基本的兩個初使函數: lInitDate:用農曆年月日初使化日...查看完整版>>公農曆轉換VB類
 
公農曆轉換VB類
網上流傳很多計算公農曆的源代碼,很多,但是居然沒有VB的,暈, 所以。。。。。 用法: 以l開始的方法均爲陰曆,以s開始的方法均爲公曆 基本的兩個初使函數: lInitDate:用農曆年月日初使化日...查看完整版>>公農曆轉換VB類
 
VB語言--夕陽殘照
提起VB語言,我有點感傷,因爲與它最熟悉最相識之後,又不得不離開它。在1995年最早接觸的是Basic語言,學了大約一年,因Basic語言編程超過1000行,便會出現當時我無法解釋、也無法解決的問題,所以便開始學習了C語言...查看完整版>>VB語言--夕陽殘照
 
怎樣手工聲明API
怎樣手工聲明API 轉自: VB愛好者樂園 --------------------------------------------------------------------------------盡管 Visual Basic 在 Win32api.txt 中提供了大量的預定義聲明,但還是需要知道如何...查看完整版>>怎樣手工聲明API
 
3100語言及輸入法轉換
本以爲3100在簡體中文界面下沒有英文輸入法.實際上,nokia做的機器不可能沒考慮到英文輸入的問題.在編輯短信的時候,直接按"#"選擇的,只有拼音,筆畫,大寫小寫字母和數字選擇"操作"有一個"預想英文",就是t9英文輸入法.左...查看完整版>>3100語言及輸入法轉換
 
 
回到王朝網路移動版首頁