歡迎訪問 Forcal程序設計www.chkqcm.tw
     
  推薦使用新腳本Lu:Lu是對Forcal的完善和發展,但與Forcal相比,Lu更簡潔實用。

Lu使用說明    下載試用

 

Forcal V9.0 使用說明

歡迎使用 FORCAL 開發使用說明 !
借助本說明可以了解 FORCAL V9.0 的全部詳細信息。
1.熟悉Forcal基本語法(Forcal核心庫語法和Forcal擴展庫語法)。
2.使用Forcal核心庫進行程序開發。
3.開發Forcal擴展動態庫。
4.開發基于FcData的擴展庫。
5.開發基于MForcal的擴展庫。
目  錄 簡  介
1 什么是Forcal     Forcal是一個字符串表達式編譯運行動態庫。
關于Forcal的聲明  
Forcal運行要求     Forcal是綠色軟件,免安裝,不讀寫注冊表。
    Forcal32W.dll V9.0 用VS 2008編譯生成,動態庫版本需要MSVC運行庫的支持,靜態庫版本不需要。軟件包中提供了Forcal的兩種版本。Forcal動態庫版本文件小于150K,靜態庫版本約260K~300K。使用Forcal動態庫版本時若程序不能正常運行,需要用戶自行安裝所需的MSVC運行庫,安裝方法從網上可以查到,本軟件包中不再提供。強烈建議使用Forcal的動態庫版本。
    由于VS 2008的編譯機制所限制,Forcal32W.dll V9.0不能在Windows98中運行。
2 Forcal核心庫     只有一個動態庫文件Forcal32W.dll。
Forcal用戶     Forcal用戶有軟件用戶和編程用戶兩種。軟件用戶指使用由Forcal支持的軟件的用戶;編程用戶指使用Forcal編程的用戶。若不特別說明,一般指Forcal的軟件用戶。
Forcal新手參考     概括介紹Forcal的特點與功能,使用戶對Forcal有一個大致的了解。介紹學習Forcal必須掌握的基本語法知識。
Forcal用戶指南     從軟件使用者的角度介紹Forcal的功能和用法。
    所有源代碼可通過測試程序 ForcalTest.exe、ForcalDemo.exe 或 MForcalDemo.exe 進行演示。ForcalTest是控制臺程序,輸出計算結果比較快。ForcalDemo和MForcalDemo是windows程序,界面更友好一些。
Forcal編程指南     Forcal用Win32標準函數調用方式(stdcall調用協議)輸出了動態庫函數,可供C/C++、C#、VB、delphi、FORTRAN等程序使用。介紹如何使用Forcal進行軟件開發。
循序漸進Forcal例程     從簡單到復雜的一些使用Forcal編程的例子。
如何在Forcal中添加對象     開發者在軟件中添加一些對象,然后通過腳本操作這些對象,這是許多程序員的夢想。本文提供的是在主程序中添加對象的例子,這些例子都是控制臺應用程序。
數據存儲和檢索     數據存儲和檢索是Forcal的另一特色。可以使用Forcal保存任意類型的數據,且具有很高的查找效率。
    相關函數請參考Forcal編程指南,例子請參考源程序ForcalData.cpp(在文件夾“ForcalData”中)和頭文件Forcal32W.h。
演示程序源代碼     演示程序ForcalTest、ForcalDemoMForcalDemo實現了不同尋常的功能,但源代碼并不長,熟悉這些代碼,就可以隨心所欲地使用Forcal!
    源代碼在文件夾code的相關子文件夾中,C/C++例子要加入頭文件forcal32w.h一起進行編譯。此外還有C#調用Forcal的例子 、Delphi7調用Forcal的例子。
    C/C++及C#源代碼由VS 2008編譯通過,注意要將活動解決方案配置為“Release”。Delphi源代碼由Delphi7編譯通過。
    通過源代碼,可以了解如何在程序中加載使用Forcal32W.dll,如何使用Forcal編譯字符串表達式,如何向Forcal注冊自定義的各種常量或函數,如何加載Forcal擴展動態庫等等。
3 Forcal演示程序     雖然是演示程序,但并不局限于演示一些小程序,借助于本軟件包中附帶的Forcal擴展動態庫,演示一些大型計算項目是完全可以的。
ForcalTest     控制臺演示程序。由Forcal支持。
ForcalDemo     windows演示程序。由Forcal支持。
MForcalDemo     windows演示程序。由Forcal和MForcal支持。
AutoMfc     Forcal實用程序,由Forcal和MForcal支持。可以自動運行擴展名為.AFC的MForcal源文件。
OpenFC     OpenFC全面演示了Forcal的應用,由Forcal和MForcal支持。可以從作者網站、天空軟件站、華軍軟件園等多家站點下載到該程序。
4 Forcal擴展動態庫

    使用Forcal核心庫的輸出函數,用戶可構建自己的處理系統。但作者也根據Forcal核心庫的輸出函數,構建了一套系統——以Forcal擴展動態庫的形式對Forcal進行了功能擴展,FcData、MForcal、FcString、FcSystem等即是這套系統的重要組成部分;這套系統是以FcData和MForcal兩個庫為基礎的,FcData提供了基本數據類型擴展功能,MForcal可對Forcal源程序進行模塊化編譯。

Forcal擴展動態庫     Forcal擴展庫基本格式。介紹如何對Forcal進行功能擴展。Forcal擴展動態庫中僅有一個輸出函數 FcDll32W(...),設計和應用都很方便。可用C/C++、delphi、FORTRAN等語言設計Forcal擴展動態庫。
例子1:FcConst.dll     用于向Forcal添加常量,添加完常量即可卸載該庫。
    源程序文件和模塊定義文件在文件夾“dll_FcConst”中。
    用VS 2008新建一個“Win32 dll”工程,將相應的源程序文件、模塊定義文件和頭文件Forcal32W.h添加到該工程,編譯時將活動解決方案配置為“Release”。
例子2:Example.dll     向Forcal注冊了幾個函數。
    源程序文件和模塊定義文件在文件夾“dll_Example”中。
    編譯方法同上。
用Delphi設計Forcal擴展動態庫     用Delphi設計Forcal擴展動態庫的簡單例子。源程序文件在文件夾“dll_DelphiFcDll”中。
如何在Forcal擴展庫中添加對象     開發者在軟件中添加一些對象,然后通過腳本操作這些對象,這是許多程序員的夢想。
    本文提供的是在Forcal擴展庫中添加對象的例子,有兩種方法可以將一個任意的對象添加到Forcal中,一種是添加FcData可管理的對象;另一種是通過Forcal32W.dll的輸出函數添加對象。
在軟件中加入Forcal&MForcal支持     在軟件中加入Forcal & MForcal支持是一件很容易的事,比直接使用Forcal設計程序要簡單地多。有了MForcal提供的模塊化編譯功能的支持,可在軟件中方便地使用腳本函數。如果軟件能動態地加載Forcal擴展庫,軟件將由此獲得無限的可擴充性 。
5 兩個重要的Forcal擴展庫     是其他Forcal擴展庫運行的基礎。
Forcal數據擴展動態庫FcData     該庫對Forcal的數據類型進行了擴展。基本數據類型包括簡單數據和數組,可以自定義類。通過FcData32W.dll的輸出函數接口,可以向FcData添加任意復雜的數據類型。基本操作對象是FcData數據指針。
Forcal模塊化編譯運行庫MForcal     對Forcal源程序進行模塊化編譯,能夠編譯運行具有固定格式的源程序(字符串表達式),源程序中可以使用C++風格的注釋。
6 其他Forcal擴展庫     有些擴展庫以MForcal或FcData為基礎,參考這里
QuitFc     退出Forcal運行時的無限循環。任意可接受輸入的窗口,按 Ctrl+Alt+Q(q) 鍵可以退出Forcal運行時的無限循環。
    根據需要加載該庫。
Forcal系統函數庫     主要是Forcal系統或操作系統相關的函數。
Forcal標準輸入輸出系統     Forcal標準輸入輸出系統。包含基于Windows的輸入輸出系統。
Forcal字符串庫     Forcal字符串庫。包含ANSI及Unicode字符串的各種操作函數,包含正則表達式函數。
Forcal數值計算擴展動態庫FcMath     該庫的數值算法是以矩陣為基礎,并進行了運算符重載,具有內存消耗低、執行效率高、代碼簡潔、實用性強的特點。
Forcal數值計算擴展動態庫XSLSF     XSLSF算法主要選自《C常用算法程序集》第二版,徐士良主編。在XSLSF中的函數是通過二級函數命名空間“XSLSF”輸出的,所有函數均具有類似“XSLSF::rmul”的格式,全部是實數函數。主要內容包括矩陣運算,矩陣特征值與特征向量的計算,線性代數方程組的求解,非線性方程與方程組的求解,插值與逼近,數值積分,常微分方程組的求解,極值問題的求解,復數、多項式與特殊函數的計算等。這些算法都是行之有效的,基本可以滿足解決工程中各種實際問題的需要。
Forcal數值計算擴展動態庫FcIMSL     IMSL是一個集合數學與統計函數的鏈接庫,擁有許多精準的數學統計算法,它的強大、可靠的數學與統計鏈接庫能夠在執行效率與計算資源間取得極佳的平衡。本說明包含封裝IMSL庫函數的方法。
Forcal參數優化擴展動態庫FcOpt     包含一些參數優化函數,具有極強的全局優化能力。
Forcal窗口庫FcWin     基于Windows的窗口庫。
Forcal圖形庫OpenFcGl     基于OpenGL的圖形庫。
Forcal圖形庫FC2D     基于Windows API的2D圖形庫多線程動態繪制圖形是FC2D的基本特點。
7 General Forcal DLL     GForcal32W.dll是一個通用的Forcal腳本系統(簡稱GForcal)。GForcal可看作應用程序與Forcal之間的一個接口,但GForcal簡化了Forcal腳本的使用。
8 Forcal高級語法概念  
Forcal中的對象、函數和模塊     Forcal的核心庫Forcal32W.dll中沒有類和對象的概念,但Forcal32W.dll對功能擴展提供了很好的支持,利用Forcal32W.dll本身提供的編程功能和Forcal擴展動態庫FcData及MForcal,很容易地構造出類及對象的概念。由于動態編譯的特點,Forcal完全可以看作是面向對象的。
Forcal中的類模塊及數據結構     Forcal的核心庫Forcal32W.dll中沒有類和對象的概念,但Forcal32W.dll對功能擴展提供了很好的支持,利用Forcal32W.dll本身提供的編程功能和Forcal擴展動態庫FcData及MForcal,很容易地構造出類及對象的概念。由于動態編譯的特點,Forcal完全可以看作是面向對象的。
9 Forcal軟件構成     Forcal軟件的樣子。
Forcal軟件構成     由Forcal32W.dll支持的軟件簡稱為Forcal軟件。Forcal軟件可分為兩類:可執行程序和Forcal擴展模塊。Forcal軟件的構成是高度組合式的。
Forcal的用途     從三個方面討論Forcal的應用。
10 其他  
最新升級內容  
 
關于Forcal的聲明
 
    1、任何人在使用或傳播Forcal時,默認完全同意該聲明。
    2、免責聲明:盡管作者對Forcal32W.dll作了極為嚴格的測試,但仍不能保證沒有絲毫錯誤,由于這些錯誤或用戶判斷錯誤造成的任何后果,本人皆不承擔任何法律責任,不支付任何直接和間接的經濟賠償。如果您使用本軟件或注冊本軟件,就默認認同了該“免責聲明(disclaimer)”。特此聲明。
    3、您可以自由使用和傳播Forcal32W.dll而不受任何限制,但您不能對Forcal32W.dll進行仿制、反匯編或逆向工程,或對Forcal32W.dll作其他任何形式的更改。
    4、作者僅對Forcal32W.dll擁有全部版權,由Forcal32W.dll支持的實用程序的版權歸實用程序的開發者所有。
    5、最終用戶(非商業性用戶)可永久免費使用Forcal!作者僅對涉及Forcal(包括Forcal軟件本身及相關資料)的商業性行為收費。
    6、任何人不能將Forcal32W.dll用于任何非法用途。
    7、本軟件受版權法和國際條約保護。任何人在使用和傳播Forcal32W.dll時若違反以上條款,將在法律許可的范圍內受到最大可能的起訴。

簡介
 
    通常,使用各種高級語言如C/C++、VB、delphi、FORTRAN等設計的程序,不能對源代碼進行動態編譯,Forcal可為所有這些應用程序增加對字符串源代碼的動態編譯功能。Forcal可用于各類數學軟件的設計,也可用作報表處理、web、組態軟件、游戲等的腳本,具有很高的執行效率。
    Forcal32W.dll是Forcal的32位Unicode版本,是一個對Unicode
字符型表達式進行編譯計算的動態庫。表達式中可以使用的運算符有+、-、*、/、^、>、>=、<、<=、==、!=、&、|、!、++、--等等,Forcal具有數值計算、邏輯運算、關系運算、字符數據處理、流程控制、函數調用等許多的可編程功能。
    Forcal支持中文編程,可以使用中文標識符,如中文函數名、中文變量等。

    Forcal用鍵樹保存和檢索數據信息,可以用Forcal保存和檢索任意類型的數據,存儲效率高,且具有很高的查找效率。
    Forcal有許多內置的基本函數(一級函數和二級函數),不過可以使用(C/C++)、Delphi、FORTRAN等編譯器方便地擴充這些基本函數(二級函數),你可以讓這些函數完成不同凡響的功能。
    Forcal支持整數、實數和復數三種類型的表達式,可以使用這些表達式在Forcal中設計自定義的函數。
    Forcal在調用擴充的或自定義的函數時,就象調用系統內置的函數一樣,沒有任何分別。
    Forcal對所有的函數都支持遞歸調用,不管這些函數是系統內置的,擴充的,還是自定義的。
    Forcal在調用函數時,既支持傳值調用,也支持傳址調用(引用調用),當采用后一種方式時,可以從函數返回更多的值。
    Forcal對代碼進行盡可能的優化,因而運行速度也非常地出色,一級函數的計算速度約為(C/C++)或FORTRAN速度的50%左右,二級函數的速度稍有降低。
    Forcal編譯系統支持模塊化編譯,對設計復雜的軟件項目很有幫助。
    Forcal編譯系統可以對編譯時出錯的位置進行準確定位,排除錯誤非常方便。
    Forcal用Win32標準函數調用方式(stdcall調用協議)輸出了動態庫函數,可供C/C++、C#、VB、delphi、FORTRAN等程序使用。
    很容易對Forcal進行功能擴展,Forcal擴展動態庫中僅有一個輸出函數 FcDll32W(...),設計和應用都很方便。可用C/C++、delphi、FORTRAN等語言設計Forcal擴展動態庫。
    雖然Forcal32W.dll僅支持32位程序,但在32位平臺上編寫的Forcal代碼,以后可不加修改地運行于64位平臺。

最新升級內容
 

    編程用戶(2011.08.15):

    1.在Forcal核心庫中新增分號運算符:逗號、冒號和分號運算符是等價的,三者可增加程序的可讀性。
    2.在MForcal中新增雙分號分隔符,用以指出該表達式運行后不輸出該表達式的值。

    編程用戶(2011.07.12):

    1.在Forcal核心庫中新增一級函數:相反數函數opp(x)。主要用于函數oo中,用opp(x)代替-x以避免運算符的重載。
    2.在MForcal中新增錯誤處理函數(二級函數)seterr、geterr、clearerr等。

    編程用戶(2011.05.08):

    1.升級了FcData、FcSystem和FcString三個擴展庫,更好地支持了運算符重載。

    編程用戶(2011.05.03):

    1.新增用Delphi設計Forcal擴展動態庫的簡單例子。

    編程用戶(2011.03.28):

    1.核心庫新增函數InsertKeyP、SignGoodObj和GC。增強了對象的運算符重載功能,并新增垃圾收集器。

    軟件用戶(2011.03.28):

    1.新增垃圾收集器及相關函數

    編程用戶(2011.03.06):

    1.新增Delphi7調用FORCAL的例子。

    軟件用戶(2011.02.06):

    1.更新并增強了優化庫FcOpt中 的優化函數,提高了全局優化能力及易用性

    軟件用戶(2011.01.17):

    1.優化庫FcOpt中新增函數isolve和solve,可求解方程(組)的全部解

    軟件用戶(2010.12.18):

    1.新增基于Windows API的2D圖形庫FC2D多線程動態繪制圖形是FC2D的基本特點。

    編程用戶(2010.11.27):

    1.新增通用FORCAL腳本系統GForcal(General Forcal DLL)。GForcal可看作應用程序與Forcal之間的一個接口,但GForcal簡化了Forcal腳本的使用。

    軟件用戶(2010.9.15):

    1.增強了函數參數運算符“.”的功能,新增函數oset、oget,以支持簡潔的函數調用。
    2.新增
數值計算擴展動態庫FcMath,該庫以矩陣運算為基礎 ,并通過運算符重載使代碼簡潔。

    編程用戶(2010.9.15):

    1.輸出函數DeleteConstOrFunction、DeleteKeyDeletePrivateKey返回一個bool值,表示操作是否成功。
    2.增強了輸出函數
ExMsgWithForcal的運算符重載功能。
    3.FcData的輸出函數
RegFcDataType有更改,以支持數據類型的運算符重載功能,新增部分輸出函數。

    軟件用戶(2010.8.5):

    1.新增函數oo{... ...}、o(p,... ...)、to(p)、oofree(p),用于支持運算符重載。

    編程用戶(2010.8.5):

    1.擴充了輸出函數ExMsgWithForcal的功能,以支持運算符重載。

    軟件用戶(2010.6.3):

    1.新增函數free(p),用于記錄申請的對象,可在銷毀表達式時自動銷毀這些對象。
    2.新增括號連接運算符“:=”。
    3.允許設置編譯表達式時將未定義的標識符編譯為模塊變量。默認情況下,模塊變量須先定義,后使用。

    編程用戶(2010.6.3):

    1.允許設置編譯表達式時將未定義的標識符編譯為模塊變量。默認情況下,模塊變量須先定義,后使用。

    軟件用戶(2010.3.12):

    1.新增基于IMSL的數值計算動態庫FcIMSL。

    軟件用戶(2010.2.10):

    1.在Forcal字符串庫FcString中增加了正則表達式的支持
    2.新增參數優化擴展動態庫FcOpt。

    軟件用戶(2009.8.1):

    1.支持中文編程,可以使用中文標識符,如中文函數名、中文變量等。
    2.使用Unicode字符串作為Forcal默認字符串。擴展了字符串中的轉義字符。可通過轉義字符定義靜態空間。
    3.支持靜態數組,相關的存取函數是一級函數,具有很高的執行效率。
    4.整數表達式中的整數升級為64位,可進行更大的數的運算。
    5.在整數表達式中增加了位運算函數,位運算函數是一級函數,具有很高的執行效率。
    6.增加、修改、刪除了部分一級函數及二級函數。
    7.增加了訪問命名空間的函數using。
    8.修改了部分FcData函數,特別增加了標準格式化輸出函數printff和printfs。
    9.新增
FcIO、FcString、FcSystem等擴展動態庫,極大地豐富了Forcal系統的功能。另新增Forcal數值計算擴展動態庫XSLSF32W.dll,基本可以滿足解決工程中各種實際問題的需要。
    10.優化了演示程序ForcalTest,新增演示程序ForcalDemo可演示大的計算項目。

    編程用戶(2009.8.1):

    1.表達式字符串改為wchar_t字符串(Unicode字符串)Forcal32W.dll的大部分輸出函數使用wchar_t字符串,少部分函數仍使用char字符串。
    2.整數表達式中的整數
升級為64位
    3.編譯表達式返回的錯誤代碼新增37、38、39。
    4.指針數據保存在整數、實數或復數的前4個字節中。
    5.
FcData中real32數據(相當于C中的float數據)保存在整數或實數的前4個字節中
    6.FcData中使用Unicode字符串作為默認字符串
    7.強烈建議Forcal擴展動態庫中的函數使用命名空間命名方式。
    8.編程用戶應編寫移植性高的代碼,可方便地移植到64位平臺。

版權所有© Forcal程序設計 2002-2011,保留所有權利
E-mail: [email protected]  QQ:630715621
最近更新:
2013年09月06日
福利彩票22选5走势图