iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 2
0
自我挑戰組

30 Days 如何把 C 語言偽裝成高階語言 OWO /系列 第 2

Days 2: 大綱(十分建議先看這個)

在開始之前,先列一下大綱,
瞭解一下接下來應該會做什麼。

▌大綱如下:

  1. 簡介
    1. Days 1: 簡介、廢話、目錄 (十分建議先看 Days 2 的大綱)
  2. 重溫指標、記憶體地址概念
    1. Days 3: 重溫指標:記憶體地址 、 儲存空間
    2. Days 4: 重溫指標:靜態變數的地址、函數回傳地址
    3. Days 5: 重溫指標:不使用回傳地址方式的函數
    4. Days 6: 重溫指標:不使用回傳地址方式的函數(續.)
    5. Days 7: 重溫指標:數據、數據類型的本質
    6. Days 8: 重溫指標:雜項:指標宣告、運算符
  3. 重溫 malloc() 和 free() 的用法
    1. Days 9: 動態記憶體分配:malloc()、calloc()、realloc()、free(),內存洩露
  4. 重溫 atexit() 的用法
    1. Days 10: atexit()、函數程序結束時調用函數
  5. 實現簡單垃圾回收器
    1. Days 11: 什麼是垃圾回收器?
    2. Days 12: 垃圾回收器系列:概念、粗略實現
    3. Days 13: 垃圾回收器系列:完善標記地址的函數
    4. Days 14: 垃圾回收器系列:完善 用於釋放所有被標記地址的函數
    5. Days 15: 垃圾回收器系列:初步測試
    6. Days 15: 垃圾回收器系列:初步測試 ( 代碼 )
    7. Days 16: 垃圾回收器系列:解決全域變數的問題、靜態變數
    8. Days 17: 垃圾回收器系列:更好的封裝性
    9. Days 18: 垃圾回收器系列:更多的功能
    10. Days 19: 垃圾回收器系列:鎖碎事項:細節優化
    11. Days 20: 垃圾回收器系列:記憶體碎片化、內存池
  6. 重溫前置處理器、巨集
    1. Day 21:重溫前置處理器、巨集( #, ## )、預先定義的巨集
    2. Day 22:重溫 可變參數函數、可變參數宏 __VA_ARGS__
  7. 重溫 goto 、標記
    1. Day 23: goto、標記、爭議及反面例子
  8. 嘗試實現例外處理
    1. Day 24: 例外處理系列:極粗略實現、使用例子
    2. Day 25: 例外處理系列:研究進行中:優化:一個 catch 可對應多個 try
    3. Day 26: 例外處理系列:研究進行中 :優化:不再需要【回傳值必須作錯誤碼處理的約定】
    4. Day 27: 例外處理系列:研究進行中 :大量優化、黑魔法
    5. Day 28: 例外處理系列:研究結束中 :finally() 、進行封裝、巨集優化
    6. Day 29: 例外處理系列:巨集函數具體的使用方式
  9. 總結、完結撒花
    1. Day 30: 總結、廢話、完結撒花

垃圾回收牽涉不少指標、記憶體地址操作
例如:在用 malloc() 時標記地址、還有free()。
指標真的很重要,所以會用比較長的篇幅

而巨集對代碼優化及重構有很大幫助。


www

物件導向泛型繼承 這些特性,
不加一層抽象層、VM可能有點難做。( 所以可能不會去做

我也是一邊做一邊學
這才是自我挑戰嘛~

為自己加油!~/images/emoticon/emoticon18.gif


上一篇
Days 1: 簡介、廢話、目錄 (十分建議先看 Days 2 的大綱)
下一篇
Days 3: 重溫指標:記憶體地址 、 儲存空間
系列文
30 Days 如何把 C 語言偽裝成高階語言 OWO /31

尚未有邦友留言

立即登入留言