<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                #### **表達式的構成** 表達式是autolisp的基本構成單元,每個autolisp程序都是由一個或多個表達式構成。其基本形式是: > (函數名 參數 ) ***左括號 函數名 一個或多個參數 右括號*** 其中每個參數都可以是另一個表達式。 每個表達是都會返回一個值,這個值又可以作為上一級函數的參數 表達式的計算順序是從里到外,從左到右 例子: `(+ 1 2)` 結果是 3 `(+ 2 (* 3 7))` 結果是23。先計算 (* 3 7),得到結果21,再計算(+ 2 21),得到結果23 #### **表達式求值規則** 1、如果當前位置的類型是列表,則進入狀態2;如果是原子(符號或字面量),則進入狀態4. 2、將列表的第一項作為函數名,其余項作為參數,進行函數求值。函數求值進入狀態3 3、如果函數名這一項合法,則對其余各項按從左到右的順序依次應用狀態1,將每項的返回值最為參數,執行函數調用;如果函數名不合法,則錯誤退出。 4、如果是符號,返回符號的值;如果是字面量,返回這個字面量本身。 對狀態3,有幾個函數是例外 defun - 執行時不對函數名之后的項求值 setq - 不對要賦值的項求值 舉例: 1、 ``` (setq a 9 b "string") ``` 執行過程是: 狀態1 -》狀態2 -》狀態3:對9求值 -》狀態4:返回9-》狀態3:對"string"求值-》狀態4:返回"string"-》狀態3:執行函數調用: 函數名setq 參數 a 9 b "string" 2、 ``` (* (+ 1 2) 5) ``` 執行過程: 狀態1 -》狀態2 -》狀態3:對(+ 1 2)求值 -》狀態1.1-》狀態2.1-》狀態3.1:對1求值-》狀態4:返回1-》狀態3.1:對2求值-》狀態4:返回2-》狀態3.1:執行函數調用 函數名+ 參數 1 2,結果是3,將結果返回-》狀態3:對5求值-》狀態4:返回5-》狀態3:執行函數調用 函數名* 參數 3 5,結果15 3、`(set a 5)` 執行過程: 狀態1 -》狀態2 -》狀態3:對a求值 -》狀態4:返回nil-》狀態3:對5求值-》狀態4:返回5-》狀態3:執行函數調用,函數名 set 參數 nil 5,由于nil不是合法的符號,錯誤返回。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看