當前位置:編程學習大全網 - 編程語言 - C語言代碼套用在Delphi編程中[1]

C語言代碼套用在Delphi編程中[1]

 Delphi適合用來開發應用程序 但是有時侯壹些底層的東西可以直接使用C語言來開發 我在公司經常開發跟硬件相關的項目 而很多硬件的SDK包是用C來寫的 這個時候我壹般把它們轉換成Delphi(PASCAL)語法的代碼

 壹:將C語言的程序編譯成DLL供Delphi調用 這種方法過於簡單 而且需要額外帶壹個DLL文件 所以不在本文的討論範圍之內

 二:直接轉換C語言代碼到DELPHI代碼

 C語言的函數格式與Delphi不同 它們是函數返回類型在前 函數聲明在後 對於沒有任何返回類型的函數則定義為VOID類型

 例如:Delphi中函數function MyFunction:(intIN:integer):Bool;相應的C語言代碼就變成Bool MyFunction(int intIN);又例如procedure MyProcedure;====>void MyProcedure;采用這種方法 壹般要求對C語言比較熟悉 我壹般是采用這種方法 下面是我收集整理的自己常用的Delphi與C之間的類型對應表 其中左邊是C類型 右邊是對應的Delphi類型:

 以下是引用片段: 

ABC > TABC ACCEL > TAccel ATOM > TAtom BITMAP > TBitMap BITMAPCOREHEADER > TBitmapCoreHeader BITMAPCOREINFO > TBitmapCoreInfo BITMAPFILEHEADER > TBitmapFileHeader BITMAPINFO > TBitmapInfo BITMAPINFOHEADER > TBitmapInfoHeader BOOL > Bool CBT_CREATEWND > TCBT_CreateWnd CBTACTIVATESTRUCT > TCBTActivateStruct CHAR > Char CHAR* > PChar CLIENTCREATESTRUCT > TClientCreateStruct COLORREF > TColorRef PAREITEMSTRUCT > TCompareItemStruct STAT > TComStat CREATESTRUCT > TCreateStruct CTLINFO > TCtlInfo CTLSTYLE > TCtlStyle CTLtype > TCtltype DCB > TDCB DDEAACK > TDDEAck DDEADVISE > TDDEAdvise DDEDATA > TDDEData DDEPOKE > TDDEPoke DEBUGHOOKINFO > TDebugHookInfo DELETEITEMSTRUCT > TDeleteItemStruct DEVMODE > TDevMode DOUBLE > Double DRAWITEMSTRUCT > TDrawItemStruct DWORD > LongInt ENUMLOGFONT > TEnumLogFont EVENTMSG > TEventMsg FARPROC > TFarProc FIXED > TFixed FLOAT > Single GLYPHMETRICS > TGlyphMetrics HANDLE > THandle HANDLETABLE > THandleTable HARDWAREHOOKSTRUCT > THardwareHookStruct HELPWININFO > THelpWinInfo INT > Integer KERNINGPAIR > TKerningPair LOGBRUSH > TLogBrush LOGFONT > TLogFont LOGPALETTE > TLogPalette LOGPEN > TLogPen LONG > LongInt LONG DOUBLE > Extended LONG INT > LongInt LPSTR > PChar LPWSTR > PWideChar MAT > TMat MDICREATESTRUCT > TMDICreateStruct MEASUREITEMSTRUCT > TMeasureItemStruct MENUITEMTEMPLATE > TMenuItemTemplate MENUITEMTEMPLATEHEADER > TMenuItemTemplateHeader lishixinzhi/Article/program/Delphi/201311/8458

  • 上一篇:我是2011成都要到雅安川農的新生,想知道需要帶什麽東西過去?謝謝了
  • 下一篇:數控車床程序的編程方法
  • copyright 2024編程學習大全網