Android NDK 開發實戰:JNI 完整流程、資料傳遞、錯誤排查與 C 反呼叫 Java(下)
NDK 開發標準流程 建立 Android 專案,宣告 native 方法。 用 javac 編譯 Java,再用 javah 產生 .h 標頭檔(含 JNI
Android NDK 開發入門:C 語言基礎到 JNI 實戰完整指南(上)
前言 Android NDK 允許將 C/C++ 程式碼編譯為原生共享庫(.so),透過 JNI (Java Native Interface) 供 Java/
C 語言實現循環佇列:連續儲存、O(1) 入隊出隊完整教學
循環佇列基本概念 佇列遵循先進先出 (FIFO)。連續儲存(陣列)實現時,為避免資料搬移,採用環狀緩衝區:head 指向隊頭元素,tail 指向隊尾下一個可寫入
演算法面試必考:字串原地反轉的兩種 O(1) 空間實現
題目 給定一個以空字元結尾的字元陣列 char *str,要求原地反轉字串,時間複雜度 O(n),額外空間 O(1)。 方法一:異或交換法 利用 a ^= b
C/C++ 讀取含空白字元字串的標準做法:getline 與 getline 完全指南
問題背景 cin >> str 或 scanf(%s) 遇到空白(空格、Tab、換行)即停止,無法讀取完整行或含空格的字串。正確做法是使用行導向輸入
演算法導論:AVL 樹刪除操作完整實現與平衡調整詳解
前言 AVL 樹(Adelson-Velsky and Landis)是最早發明的自平衡二元搜尋樹,透過維護每個節點的平衡因子(Balance Factor,
C語言函數式編程探索(一):Wrapper 函數模擬閉包與線程入口適配
C 語言雖無原生閉包、高階函數支持,但通過函數指針與Wrapper 函數模式,可實現有限的函數式編程技巧。本文以線程池入口適配為例,展示如何用 Wrapper
JSP 標準標籤庫 (JSTL) 核心標籤完整參考與實戰範例
JSTL 簡介 JSTL (JSP Standard Tag Library) 封裝了 Web 開發中最常見的流程控制、資料格式化、資料庫存取、國際化等功能,以
Objective-C Protocol 協議完整指南:定義、實作與動態檢查
什麼是 Protocol? Protocol(協議) 定義了一組方法清單,規範「遵循者」必須或可選實作的介面。它相當於 Java 的 interface 或 C
Linux 嵌入式開發:C 語言結合 Shell 實現網卡連線狀態偵測
需求背景 嵌入式 Linux 設備常需監控網路介面(如 eth0、wlan0)是否插網線、是否啟用、是否取得 IP。標準庫無直接 API,常見做法是呼叫 ifc
Objective-C Blocks 完整指南:從語法到代理模式替代實戰
什麼是 Blocks? Blocks(塊) 是 C 語言層面的閉包,支援捕獲外部變數、作為參數傳遞、延遲執行。Apple 於 OS X 10.6 / iOS 4
Linux 網路程式設計:I/O 多路復用 select() 完整實戰指南
為什麼需要 I/O 多路復用? 傳統阻塞 I/O 模型下,單執行緒只能處理單一連線;多進程/多執行緒雖能並發,但上下文切換與記憶體開銷巨大。I/O 多路復用 讓
Objective-C Category 機制深度解析:擴充系統類別的最佳實務
什麼是 Category? Category(分類) 是 Objective-C 獨有的語言特性,允許在不繼承、不修改原始碼的前提下,為既有類別(含系統框架類別
iOS 開發核心模式:Delegate 代理模式完整解析與實戰
什麼是 Delegate 代理模式? 在 iOS / macOS 開發中,Delegate(代理)模式 是實現物件間「一對一」通訊的基石。它將「發生事件的物件(
C語言 Linux 網卡狀態檢測:getifaddrs 高級接口實現
Linux 下檢測網卡鏈路狀態(UP/DOWN、插拔、連接),傳統 ioctl(SIOCGIFFLAGS) 需手動構造 ifreq、遍歷接口。現代 getifa
C語言實現 mini grep:標準輸入模式匹配行過濾器
Unix 經典工具 grep 的極簡實現:從標準輸入逐行讀取,輸出包含指定模式字符串的行。核心 API:fgets/getline 讀行,strstr 子串匹配
C語言實現二叉搜索樹:單詞統計完整案例(創建、查找、中序遍歷)
經典 K&R 風格案例:讀取標準輸入文本,提取單詞,插入二叉搜索樹(BST)統計詞頻,最後中序遍歷輸出按字典序排列的單詞與計數。完美演示結構體自引用、指針操作、