国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > 易語言 > 正文

易語言通過文本解析的方式把C代碼轉換成易代碼

2024-07-21 23:02:41
字體:
來源:轉載
供稿:網友

常量數據表

.版本 2.常量 c, "<文本長度: 759>", , '常量值是一段C代碼

C代碼轉易代碼

.版本 2.支持庫 commobj.支持庫 iext2.程序集 窗口程序集_啟動窗口.程序集變量 k, 快速文本對象.程序集變量 k2, 快速文本對象.子程序 __啟動窗口_創建完畢.局部變量 z, 字符格式z.字體大小 = 8z.字體名稱 = “微軟雅黑”d1.置默認字符格式 (z)d2.置默認字符格式 (z)d1.內容 = #c.子程序 替換_程序命名, 文本型.參數 str, 文本型.局部變量 替換到.局部變量 位置1.局部變量 位置2.局部變量 s, 文本型, , "0".局部變量 s2, 文本型, , "0".局部變量 替換, 文本型, , "0".局部變量 替換為, 文本型, , "0".局部變量 參考數組, 文本型.局部變量 ik.置文本 (str)位置1 = k.尋找文本 (“void”, , 假).如果真 (位置1 = -1)  返回 (str).如果真結束位置2 = k.尋找文本 (“{”, 位置1, 假)k2.置文本 (k.取文本 (位置1, 位置2 - 位置1))k2.替換子文本 (#換行符, “”, , , 假)k2.替換子文本 (“void”, “.子程序”, , , 假)k2.替換子文本 (“,”, #換行符, , , 假)k2.替換子文本 (“(”, #換行符, , 1, 假)位置1 = k2.倒找文本 (“)”, , 真).如果真 (位置1 ≠ -1)  k2.替換文本 (位置1, 1, “”).如果真結束str = “”s = k2.分割文本 (#換行符, ).計次循環首 (取數組成員數 (s), i)  s2 = 分割文本 (刪首尾空 (s [i]), “ ”, )  .如果 (取文本右邊 (s2 [2], 1) = “]”)    s2 [2] = 文本_最右標識取左 (s2 [2], “[”)    參考數組 = “, 數組”  .否則    參考數組 = “”  .如果結束  .如果真 (取文本左邊 (s2 [2], 1) = “(”)    s2 [2] = 文本_按前兩標識取中 (s2 [2], “(&”, “)”)    參考數組 = “, 參考 數組”  .如果真結束  .如果真 (取文本左邊 (s2 [2], 1) = “&”)    s2 [2] = 取文本右邊 (s2 [2], 取文本長度 (s2 [2]) - 1)    參考數組 = “, 參考”  .如果真結束  .判斷開始 (s2 [1] = “float”)    str = str + “.參數 ” + s2 [2] + “, 小數型” + 參考數組 + #換行符  .判斷 (s2 [1] = “int” 或 s2 [1] = “long”)    str = str + “.參數 ” + s2 [2] + “, 整數型” + 參考數組 + #換行符  .判斷 (s2 [1] = “string”)    str = str + “.參數 ” + s2 [2] + “, 文本型” + 參考數組 + #換行符  .判斷 (s2 [1] = “short”)    str = str + “.參數 ” + s2 [2] + “, 短整數型” + 參考數組 + #換行符  .默認    str = str + s [i] + #換行符  .判斷結束.計次循環尾 ()返回 (str).子程序 替換_索引數字累加, 文本型.參數 文本, 文本型.局部變量 i1.局部變量 i2.局部變量 k0, 快速文本對象k0.置文本 (文本).循環判斷首 ()  i1 = k0.尋找文本 (“[”, i2, 真)  .如果真 (i1 = -1)    跳出循環 ()  .如果真結束  i1 = i1 + 1  i2 = k0.尋找文本 (“]”, i1, 真)  .如果真 (i2 = -1)    跳出循環 ()  .如果真結束  .判斷開始 (到整數 (k0.取文本 (i1, i2 - i1)) > 0)    k0.替換文本 (i1, i2 - i1, 到文本 (到整數 (k0.取文本 (i1, i2 - i1)) + 1))  .判斷 (到字節集 (k0.取文本 (i1, i2 - i1)) = { 48 })    k0.替換文本 (i1, 1, “1”)  .默認  .判斷結束.循環判斷尾 (真)返回 (k0.取文本 (, )).子程序 替換_注釋, 文本型.參數 文本, 文本型.局部變量 i1.局部變量 i2k2.置文本 (文本).循環判斷首 ()  i1 = k2.尋找文本 (“//”, i2, 真)  .如果真 (i1 = -1)    跳出循環 ()  .如果真結束  i2 = k2.尋找文本 (#換行符, i1, 真)  .如果真 (i2 = -1)    跳出循環 ()  .如果真結束  k2.替換文本 (i1, i2 - i1, “'” + k2.取文本 (i1 + 2, i2 - i1 - 2) + “;”).循環判斷尾 (真)返回 (k2.取文本 (, )).子程序 替換_按行, 文本型.參數 文本, 文本型.局部變量 s, 文本型, , "0".局部變量 f, 文本型, , "0".局部變量 is = 分割文本 (文本, #換行符, )文本 = “”.計次循環首 (取數組成員數 (s), i)  s [i] = 刪首尾空 (s [i])  .判斷開始 (取文本左邊 (s [i], 6) = “float ”)    f = 分割文本 (s [i], “float ”, )    文本 = “.局部變量 ” + 文本_按前兩標識取中 (s [i], “float ”, “=”) + “,小數型” + #換行符 + 文本 + f [2] + #換行符  .判斷 (尋找文本 (s [i], “*=”, , 假) ≠ -1)    f = 分割文本 (s [i], “*=”, )    文本 = 文本 + f [1] + “= ” + f [1] + “*” + f [2] + #換行符  .判斷 (尋找文本 (s [i], “/=”, , 假) ≠ -1)    f = 分割文本 (s [i], “/=”, )    文本 = 文本 + f [1] + “= ” + f [1] + “/” + f [2] + #換行符  .判斷 (尋找文本 (s [i], “+=”, , 假) ≠ -1)    f = 分割文本 (s [i], “+=”, )    文本 = 文本 + f [1] + “= ” + f [1] + “+” + f [2] + #換行符  .判斷 (尋找文本 (s [i], “-=”, , 假) ≠ -1)    f = 分割文本 (s [i], “-=”, )    文本 = 文本 + f [1] + “= ” + f [1] + “-” + f [2] + #換行符  .判斷 (取文本右邊 (s [i], 2) = “++”)    f = 分割文本 (s [i], “++”, )    文本 = 文本 + f [1] + “= ” + f [1] + “+1” + #換行符  .判斷 (取文本右邊 (s [i], 2) = “--”)    f = 分割文本 (s [i], “--”, )    文本 = 文本 + f [1] + “= ” + f [1] + “-1” + #換行符  .默認    文本 = 文本 + s [i] + #換行符  .判斷結束.計次循環尾 ()返回 (文本).子程序 替換_函數, 文本型.參數 代碼, 文本型.局部變量 i.局部變量 原, 文本型, , "0".局部變量 到, 文本型, , "0"k2.置文本 (代碼)原 = { “/”, “*”, “sqrtf”, “cosf”, “sinf” }到 = { “÷”, “×”, “求平方根”, “求余弦”, “求正弦 ” }.計次循環首 (取數組成員數 (原), i)  k2.替換子文本 (原 [i], 到 [i], , , 假).計次循環尾 ()返回 (k2.取文本 (, )).子程序 _轉換鈕_被單擊.局部變量 s, 文本型d2.內容 = 替換_程序命名 (文本_按標識取左 (d1.內容, “{”))s = 文本_按兩邊標識取中 (d1.內容, “{”, “}”)s = 替換_注釋 (s)s = 替換_索引數字累加 (s)s = 子文本替換 (s, #換行符, “”, , , 真)s = 子文本替換 (s, “;”, #換行符, , , 真)s = 替換_按行 (s)s = 替換_函數 (s)d2.內容 = d2.內容 + s.子程序 文本_最右標識取左, 文本型, 公開.參數 文本, 文本型.參數 最右標識, 文本型返回 (取文本左邊 (文本, 倒找文本 (文本, 最右標識, , 假) - 1)).子程序 文本_按標識取左, 文本型, 公開.參數 文本, 文本型.參數 標識, 文本型返回 (取文本左邊 (文本, 尋找文本 (文本, 標識, , 假))).子程序 文本_按前兩標識取中, 文本型, 公開.參數 文本, 文本型.參數 標識_左, 文本型.參數 標識_右, 文本型.局部變量 i.局部變量 r, 快速文本對象r.置文本 (文本)i = r.尋找文本 (標識_左, , 假).如果真 (i = -1)  返回 (文本).如果真結束i = i + 取文本長度 (標識_左)返回 (r.取文本 (i, r.尋找文本 (標識_右, i, 假) - i)).子程序 文本_按兩邊標識取中, 文本型, 公開.參數 文本, 文本型.參數 標識_左, 文本型.參數 標識_右, 文本型.局部變量 i.局部變量 r, 快速文本對象r.置文本 (文本)i = r.尋找文本 (標識_左, , 假).如果真 (i = -1)  返回 (文本).如果真結束i = i + 取文本長度 (標識_左)返回 (r.取文本 (i, r.倒找文本 (標識_右, , 假) - i))

運行結果:

易語言,C代碼,轉換,易代碼

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對VeVb武林網的支持。


注:相關教程知識閱讀請移步到易語言教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 南阳市| 乐昌市| 进贤县| 文昌市| 象州县| 沅江市| 伊宁市| 交城县| 宁蒗| 安吉县| 兴山县| 云龙县| 吴旗县| 璧山县| 车致| 阿图什市| 泽州县| 庆阳市| 公安县| 阿拉善右旗| 阳高县| 堆龙德庆县| 栾川县| 晋州市| 许昌县| 金川县| 平度市| 鹤庆县| 黄龙县| 商洛市| 阿勒泰市| 庆阳市| 崇信县| 延庆县| 阿拉善右旗| 泽普县| 桐梓县| 大洼县| 巴彦淖尔市| 新津县| 大悟县|