<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>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                利用可變參數的特性,我們可以實現一個日志功能,輸出帶有文件名,函數名,行號的一個接口來代替printf的功能;再linux c中,可以用三個宏來分別表示文件名:**\_\_FILE\_\_**;函數名:**\_\_func\_\_**;行號:**\_\_LINE\_\_**;有了這三個宏,我們再把用戶輸出的內容拼接進入,就可以完成一個帶格式的日志功能了,首先聲明并實現一個函數logd如下: ![](https://img.kancloud.cn/9f/1b/9f1b5dc6c558d16a7c96526b80962a12_832x416.png =600x) ### 這個函數的參數列表包括:文件名file,函數名func,行號line,剩下的format和一個可變參數;可變參數的解析結構和上節課一樣,多出一個新的接口函數是vsprintf,這個接口是把可變參數的內容格式化為一個字符串。 ### 為了簡化調用,我們定義一個宏LOG,這個宏主要的作用是自己填充文件名,函數名,行號,簡化調用過程: ![](https://img.kancloud.cn/79/b2/79b2eff51d9cad6897534ab8f68f26d5_832x94.png =600x) ### 最后是使用的方法: ![](https://img.kancloud.cn/0e/65/0e6583665fe7778d313dcb1b9aa08070_536x216.png) ### 編譯運行: ![](https://img.kancloud.cn/ee/95/ee95f9539b60f8e0d95964cf4d838dfb_832x238.png =600x)
                  <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>

                              哎呀哎呀视频在线观看