Ring
外觀
Ring 是一種創新且實用的通用多正規化指令碼語言,可以嵌入 C/C++ 專案,使用 C/C++ 程式碼擴充套件,或者用作獨立語言。支援的程式設計正規化包括命令式、過程式、面向物件、函式式、超程式設計、使用巢狀結構的宣告式程式設計和自然程式設計。該語言可移植(Windows、Linux、Mac OS X、Android 等),可用於建立控制檯、GUI、Web、遊戲和移動應用程式。該語言旨在簡單、精簡、靈活且快速。它是一種動態語言(動態型別和弱型別),將原始碼編譯成位元組碼,然後由 Ring 虛擬機器執行,Ring 虛擬機器與 Ring 編譯器整合在一個程式中。該語言的第一個版本(大約 100,000 行 C/C++/Ring 程式碼)於 2016 年 1 月 25 日釋出。
- 控制結構
- 分支
- 迴圈
- 在 For in 中使用 Step 選項
- 使用 For in 修改列表
- Do Again 迴圈
- Exit 命令
- 退出兩個迴圈
- 子函式內的 Exit/Loop
- 短路求值
- 關於求值的註釋
- 列表
- 建立列表
- 新增專案
- 獲取列表大小
- 從列表中刪除專案
- 獲取列表專案
- 設定列表專案
- 搜尋
- 排序
- 反轉
- 插入專案
- 巢狀列表
- 複製列表
- 一等公民列表
- 在定義期間使用列表
- 透過字串索引訪問列表專案
- 使用列表傳遞引數
- 字串
- 字串字面量
- 獲取字串長度
- 轉換字母大小寫
- 訪問字串字母
- Left() 函式
- Right() 函式
- Trim() 函式
- Copy() 函式
- Lines() 函式
- Substr() 函式
- 查詢子字串
- 獲取從位置到末尾的子字串
- 獲取從位置開始的字元數
- 將子字串轉換為另一個子字串
- strcmp() 函式
- str2list() 和 list2str() 函式
- 檢查資料型別和轉換
- 檢查資料型別
- IsString() 函式
- IsNumber() 函式
- IsList() 函式
- Type() 函式
- IsNULL() 函式
- 檢查字元
- IsAlNum() 函式
- IsAlpha() 函式
- IsCntrl() 函式
- IsDigit() 函式
- IsGraph() 函式
- IsLower() 函式
- IsPrint() 函式
- IsPunct() 函式
- IsSpace() 函式
- IsUpper() 函式
- IsXdigit() 函式
- 轉換
- Number() 函式
- String() 函式
- Ascii() 函式
- Char() 函式
- Hex() 函式
- Dec() 函式
- Str2hex() 函式
- Hex2str() 函式
- 檔案
- Read() 函式
- Write() 函式
- Dir() 函式
- Rename() 函式
- Remove() 函式
- Fopen() 函式
- Fclose() 函式
- Fflush() 函式
- Freopen() 函式
- Tempfile() 函式
- Tempname() 函式
- Fseek() 函式
- Ftell() 函式
- Rewind() 函式
- Fgetpos() 函式
- Fsetpos() 函式
- Clearerr() 函式
- Feof() 函式
- Ferror() 函式
- Perror() 函式
- Fgetc() 函式
- Fgets() 函式
- Fputc() 函式
- Fputs() 函式
- Ungetc() 函式
- Fread() 函式
- Fwrite() 函式
- Fexists() 函式
- 示例
- 系統函式
- System() 函式
- Get() 函式
- IsMSDOS()
- IsWindows()
- IsWindows64()
- IsUnix()
- IsMacOSX()
- IsLinux()
- IsFreeBSD()
- IsAndroid()
- 示例
- Windowsnl()
- 獲取命令列引數
- 獲取活動原始檔名
- ODBC 函式
- odbc_init() 函式
- odbc_drivers() 函式
- odbc_datasources() 函式
- odbc_close() 函式
- 列印 ODBC 驅動程式列表
- 列印 ODBC 資料來源列表
- odbc_connect() 函式
- odbc_disconnect() 函式
- 開啟和關閉連線
- odbc_execute() 函式
- odbc_colcount() 函式
- odbc_fetch() 函式
- odbc_getdata() 函式
- 執行查詢並列印結果
- odbc_tables() 函式
- odbc_columns() 函式
- odbc_autocommit() 函式
- odbc_commit() 函式
- odbc_rollback() 函式
- 事務和使用提交和回滾
- 儲存和恢復影像
- MySQL 函式
- MySQL_Info() 函式
- MySQL_Init() 函式
- MySQL_Error() 函式
- MySQL_Connect() 函式
- MySQL_Close() 函式
- MySQL_Query() 函式
- 建立資料庫
- 建立表並插入資料
- MySQL_Insert_ID() 函式
- MySQL_Result() 函式
- MySQL_Next_Result() 函式
- 列印查詢結果
- MySQL_Columns() 函式
- MySQL_Result2() 函式
- MySQL_Escape_String() 函式
- 將影像儲存在資料庫中
- 從資料庫中恢復影像
- MySQL_AutoCommit() 函式
- MySQL_Commit() 函式
- MySQL_Rollback() 函式
- 事務示例
- 安全和網際網路功能
- MD5() 函式
- SHA1() 函式
- SHA256() 函式
- SHA512() 函式
- SHA384() 函式
- SHA224() 函式
- Encrypt() 函式
- Decrypt() 函式
- 加密和解密示例
- 檔案雜湊
- Randbytes() 函式
- Download() 函式
- SendEmail() 函式
- 反射和超程式設計
- locals() 函式
- globals() 函式
- functions() 函式
- cfunctions() 函式
- islocal() 函式
- isglobal() 函式
- isfunction() 函式
- iscfunction() 函式
- packages() 函式
- ispackage() 函式
- classes() 函式
- isclass() 函式
- packageclasses() 函式
- ispackageclass() 函式
- classname() 函式
- objectid() 函式
- attributes() 函式
- isattribute() 函式
- isprivateattribute() 函式
- ismethod() 函式
- isprivatemethod() 函式
- addattribute() 函式
- addmethod() 函式
- getattribute() 函式
- setattribute() 函式
- mergemethods() 函式
- 使用 C/C++ 語言進行擴充套件
- ring_ext.h
- ring_ext.c
- 模組組織
- 函式結構
- 檢查引數數量
- 顯示錯誤訊息
- 檢查引數型別
- 獲取引數值
- 返回值
- 函式原型
- Sin() 函式實現
- Fopen() 和 Fclose() 函式實現
- Ring API - 列表函式
- Ring API - 字串函式
- MySQL_Columns() 函式實現
- 動態/共享庫 (DLL/So) 和 LoadLib() 函式
- Web 開發 (CGI 庫)
- Ring CGI Hello World 程式
- 使用 Web 庫的 Hello World 程式
- Web 庫功能
- HTTP Get 示例
- HTTP POST 示例
- 上傳檔案
- Cookie
- URL 編碼
- 模板
- HTML 特殊字元
- 雜湊函式
- 隨機影像
- HTML 列表
- HTML 表格
- 漸變
- 使用物件生成頁面
- 使用函式使用 Bootstrap 庫
- 使用物件使用 Bootstrap 庫
- 使用 MVC 的 CRUD 示例
- 使用者註冊和登入
- 資料庫、ModelBase 和 ControllerBase 類
- WebLib API
- Application 類
- Page 類
- ScriptFunctions 類
- StyleFunctions 類
- 用於包裝 C/C++ 庫的程式碼生成器
- 使用該工具
- 配置檔案
- 使用函式原型
- 向生成的程式碼新增程式碼
- 函式名稱的字首
- 生成函式以包裝結構
- 註冊新函式
- 在配置檔案中寫入註釋
- 在程式碼生成期間執行程式碼
- Allegro 庫的配置檔案
- 執行緒支援
- 用於包裝 C++ 類的程式碼生成器規則
- 使用包裝 C++ 庫的配置檔案
- Qt 框架的配置檔案
- 使用 RingQt 進行桌面和移動開發
- 第一個 GUI 應用程式
- 使用佈局
- 使用 QTextEdit 類
- 使用 QListWidget 類
- 使用 QTreeView 和 QFileSystemModel
- 使用 QTreeWidget 和 QTreeWidgetItem
- 使用 QComboBox 類
- 建立選單欄
- 建立工具欄
- 建立狀態列
- 使用 QDockWidget
- 使用 QTabWidget
- 使用 QTableView
- 使用 QProgressBar
- 使用 QSpinBox
- 使用 QSlider
- 使用 QDateEdit
- 使用 QDial
- 使用 QWebView
- 使用 QCheckBox
- 使用 QRadioButton 和 QButtonGroup
- 在 QLabel 中新增超連結
- QVideoWidget 和 QMediaPlayer
- 使用 QFrame
- 使用 QLabel 顯示影像
- 選單欄和樣式表示例
- QLineEdit 事件和 QMessageBox
- 其他小部件事件
- 使用 QTimer 類
- 使用 QFileDialog 類
- 使用 QPainter 繪圖
- 使用 QPrinter 列印
- 建立多個視窗
- 播放聲音
- 使用 qLCDNumber 類
- 可移動標籤示例
- QMessageBox 示例
- 使用 QInputDialog 類
- 按鍵和滑鼠移動事件
- 使用滑鼠移動物件
- 從 GUI 類繼承
- 使用 QDesktopWidget 類
- 簡單客戶端和伺服器示例
- 記事本應用程式
- 紙牌遊戲
