<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0">
    <channel>
        <title>Python - 標籤 - Yan-Hao Wang&#39;s Blog</title>
        <link>https://kola.ink/tags/python/</link>
        <description>Python - 標籤 - Yan-Hao Wang&#39;s Blog</description>
        <generator>Hugo -- gohugo.io</generator><language>zh-TW</language><managingEditor>bses30074@gmail.com (Yan-Hao Wang)</managingEditor>
            <webMaster>bses30074@gmail.com (Yan-Hao Wang)</webMaster><copyright>This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.</copyright><lastBuildDate>Fri, 01 May 2026 15:30:49 &#43;0800</lastBuildDate><atom:link href="https://kola.ink/tags/python/" rel="self" type="application/rss+xml" /><item>
    <title>Compiler, Assembler and Interpreter 了解</title>
    <link>https://kola.ink/compiler-interpreter-vm/</link>
    <pubDate>Fri, 01 May 2026 15:30:49 &#43;0800</pubDate>
    <author>bses30074@gmail.com (Yan-Hao Wang)</author>
    <guid>https://kola.ink/compiler-interpreter-vm/</guid>
    <description><![CDATA[<h2 id="c-語言">C 語言</h2>
<p>Preprocessing: 預處理，把程式碼所有用 # 開頭的指令進行替換</p>
<ol>
<li>C ISO 標準定義，所謂的 翻譯階段 (Phases of Translation)。C 語言的編譯過程在標準中被拆解為 8 個邏輯階段，而「預處理」主要涵蓋了前 4 個階段
<ol>
<li>Phase 1-3： 處理字元映射、將連行符號（\）合併、把註解換成空格</li>
<li>Phase 4： 執行所有 預處理指令（也就是你看到的 # 開頭的東西）並進行 巨集展開 (Macro Expansion)。</li>
</ol>
</li>
</ol>
<p>最後產出了 <code>.i</code> 檔案，可以參考<a href="https://blog.yurich.me/posts/translation-phases-in-c/" target="_blank" rel="noopener noreffer ">C语言的翻译阶段</a>。</p>]]></description>
</item>
</channel>
</rss>
