CSAPP 2.12 習題解析:位運算提取與修改最低有效字節
CSAPP 2.12 習題解析 題目要求:編寫 C 表達式對變量 x 的最低有效字節 (LSB) 進行操作,代碼需對任意字長 w ≥ 8 工作。參考:x = 0
漢諾塔問題:C 語言遞歸與匯編語言棧實現對比
漢諾塔:從遞歸到棧的底層實現 漢諾塔是經典的遞歸問題。本文對比 C 語言遞歸解法與 x86 匯編語言手動管理棧的實現,揭示函數調用的本質。 問題規則回顧 三
C 語言求解 4×4 矩陣最大最小值及主對角線元素和
4×4 矩陣綜合操作 本程序實現:從鍵盤輸入 4×4 整數矩陣,查找最大/最小值及其坐標,計算主對角線與副對角線元素之和。 完整代碼 #include <
C 語言實現冒泡排序:字符串按字母順序排序
冒泡排序字符串數組 冒泡排序是最基礎的排序算法,通過重複遍歷數組,比較相鄰元素並交換,將大元素逐步「冒泡」到末尾。本文展示如何對字符串指針數組進行字典序排序。
Objective-C 基礎筆記(七):Foundation 框架常用結構體詳解
Objective-C 基礎筆記(七):Foundation 框架常用結構體詳解 在 Objective-C 開發中,Foundation 框架提供了幾個核心結
Objective-C 基礎筆記(六):Block 語法與應用詳解
Objective-C Block 完全指南 Block(塊)是蘋果為 C 語言增加的閉包特性,封裝一段可執行代碼,支持參數、返回值、捕獲外部變量。廣泛用於多線
CSAPP 2.16 習題解析:移位運算對單字節數值的影響
CSAPP 2.16 習題解析 題目要求填寫表格,說明邏輯右移與算術右移對不同單字節數值的影響。假設字節為 8 位。 核心概念 左移 (<<):低位補 0,
CSAPP 2.15 習題解析:僅用位運算實現整數相等判斷
CSAPP 2.15 習題解析 題目要求:僅使用位級運算和邏輯運算,編寫 C 表達式實現 x == y。相等返回 1,否則返回 0。不得使用條件判斷、比較運算符
CSAPP 2.14 習題解析:位運算與邏輯運算表達式求值
CSAPP 2.14 習題解析 給定 x = 0x66、y = 0x39,計算各表達式的字節值(單字節,8 位)。 二進制表示 x = 0x66 = 0110
CSAPP 2.13 習題解析:用 bis/bic 指令實現位或與異或運算
CSAPP 2.13 習題解析 題目背景:VAX 計算機缺少 AND/OR 指令,僅提供兩條位操作指令: bis(x, m)(Bit Set):將 x 中掩碼
埃拉托斯特尼篩法求質數:原理與 C 語言實現
埃拉托斯特尼篩法 埃拉托斯特尼篩法 是一種古老而高效的質數篩選算法,時間複雜度接近 O(n log log n),適合求解某個上限 N 以內的所有質數。 算法
Linux GCC 編譯參數完整指南:常用選項詳解
GCC 編譯參數詳解 在 Linux 環境下進行 C/C++ 開發時,gcc 是最常用的編譯器。掌握其核心參數對於構建大型項目、編寫 Makefile 以及性能
二分查找算法詳解:原理、實現與注意事項
二分查找算法詳解 二分查找(Binary Search),又稱折半查找,是一種在有序數組中高效查找目標值的算法。其核心思想是利用數組的有序特性,每次將查找範圍縮
隊列數據結構全解析:鏈隊列、循環隊列 C 語言完整實現
隊列數據結構全解析:鏈隊列、循環隊列 C 語言完整實現 隊列(FIFO)是受限線性表,僅允許隊尾入隊、隊頭出隊。本文實現鏈式與循環順序兩種存儲結構。 一、鏈隊
C99 可變參數宏 __VA_ARGS__ 實戰:調試日志開關與 Android NDK 應用
C99 可變參數宏 __VA_ARGS__ 實戰:調試日志開關與 Android NDK 應用 C99 引入宏可變參數 ... 與 __VA_ARGS__,GC
C語言可變參數函數實現指南:va_list/va_start/va_arg/va_end 完整詳解
C語言可變參數函數實現指南:va_list/va_start/va_arg/va_end 完整詳解 C 語言通過棧傳遞參數(右至左入棧),<stdarg.
CSAPP 2.19 習題解析:補碼向無符號轉換 T2U
CSAPP 2.19 習題解析:補碼向無符號轉換 T2U 在 2.17 基礎上(w=4),完成 T2U(x) 表: x (補碼)十六進制T2U(x) (無符