中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

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

發布時間:2021-06-16 15:50:36 來源:億速云 閱讀:205 作者:小新 欄目:編程語言

這篇文章主要介紹易語言怎么通過文本解析的方式把C代碼轉換成易代碼,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

常量數據表

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

C代碼轉易代碼

.版本 2
.支持庫 commobj
.支持庫 iext2
.程序集 窗口程序集_啟動窗口
.程序集變量 k, 快速文本對象
.程序集變量 k2, 快速文本對象
.子程序 __啟動窗口_創建完畢
.局部變量 z, 字符格式
z.字體大小 = 8
z.字體名稱 = “微軟雅黑”
d1.置默認字符格式 (z)
d2.置默認字符格式 (z)
d1.內容 = #c
.子程序 替換_程序命名, 文本型
.參數 str, 文本型
.局部變量 替換到
.局部變量 位置1
.局部變量 位置2
.局部變量 s, 文本型, , "0"
.局部變量 s2, 文本型, , "0"
.局部變量 替換, 文本型, , "0"
.局部變量 替換為, 文本型, , "0"
.局部變量 參考數組, 文本型
.局部變量 i
k.置文本 (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
.局部變量 i2
k2.置文本 (文本)
.循環判斷首 ()
  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"
.局部變量 i
s = 分割文本 (文本, #換行符, )
文本 = “”
.計次循環首 (取數組成員數 (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代碼轉換成易代碼

以上是“易語言怎么通過文本解析的方式把C代碼轉換成易代碼”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

晋城| 古浪县| 肥乡县| 车致| 侯马市| 湘潭市| 太湖县| 黄陵县| 开远市| 安西县| 酒泉市| 枣阳市| 马边| 孝昌县| 迁安市| 揭东县| 永仁县| 红原县| 额敏县| 米脂县| 延川县| 综艺| 延边| 奉新县| 靖江市| 宝清县| 赣榆县| 博客| 秦安县| 宜阳县| 绍兴县| 克什克腾旗| 平山县| 吉木萨尔县| 凌云县| 阜阳市| 买车| 瑞安市| 博湖县| 茶陵县| 西丰县|