C 語言入門筆記(四):字串、字串陣列與標準庫字串函數完全手冊
字串本質 C 無內建字串型別,**字串 = 以 \0 結尾的字元陣列**。 char s1[] = {a,b,c,\0}; char s2[] = abc;
C 語言入門筆記(五):指標完整指南——定義、運算、陣列/字串/函數指標實戰
指標基礎 直接引用:變數名 → 系統自動轉址存取; 間接引用:將變數位址存入另一變數(指標變數),透過指標存取原變數; 宣告:型別 *指標名;,* 為宣告符,
C 語言入門筆記(二):流程控制語句與運算子完整速查表
流程控制語句 選擇:if / if-else / switch(case 需常數表達式,break 防貫穿); 迴圈:for / while / do-whi
C 語言入門筆記(三):sizeof、記憶體位址、一維/二維陣列佈局詳解
sizeof 運算子 編譯期計算型別/變數/常值佔用的**位元組數**; sizeof(int)、sizeof(var)、sizeof 10 皆合法; 回傳
貪心算法經典:田忌賽馬(HDU 1052)策略證明與 C++ 實現
問題重述 田忌與齊王各有 n 匹馬(n ≤ 1000),速度已知。每場比賽各出一匹,贏 +200、平 0、輸 -200。求田忌最大期望收益。 貪心策略(雙雙指
C 語言命令列編譯執行全平台指南:GCC/Clang/Vim/Sublime/Dev-C++
編譯器檢查與安裝 macOS/Linux:終端輸入 gcc 或 clang,若提示 no input files 表示已就緒;未安裝則 macOS 裝 Xco
C 語言資料型別與運算實戰:整數除法陷阱、浮點數精度、時間差計算與變數交換
整數除法的截斷陷阱 int a = 10, b = 3; printf(%d\n, a / b); // 輸出 3,小數部分直接捨棄 解決方案:引入浮點數
C 標準 I/O 細節深挖:fgets/fputs 緩衝區行為與換行符處理
函式原型回顧 char *fgets(char *str, int size, FILE *stream); int fputs(const char *str
HDU 1716 全排列輸出:DFS 遞歸與 STL next_permutation 兩種解法
題目大意 給定 4 張卡片(數字 0-9),用這 4 個數字組成所有不重複的 4 位數(千位不能為 0),按從小到大輸出。千位相同的同行,數字間空格分隔,測資之
C 語言動態記憶體管理深度解析:malloc/calloc/realloc/free 與常見陷阱
記憶體區域速覽 棧:函式區域變數、參數、返回位址,自動管理; 資料段:全域/靜態變數,程式啟動時配置,自動歸零; 堆:動態配置區域,由程式設計師手動管理(ma
C 語言實現閉雜湊表(開放定址法/線性探測)完整代碼
資料結構設計 雜湊表長度固定為 13(素數,減少衝突); 關鍵字為非負整數; 用 NIL = -1 表示空位,DEL = -2 表示已刪除位置(懶惰刪除)。
Objective-C Block 完全指南:定義、捕獲變量、循環引用解決與實戰場景
Block 語法速查 // 完整形式 返回類型 (^名稱)(參數列表) = ^(參數列表) { 實現代碼; }; // 無參無回傳 void (^sayHel
Objective-C 集合類入門:NSArray 與 NSMutableArray 全方位詳解
NSArray 基礎 有序、不可變的物件集合; 只能儲存 Objective-C 物件(基本型別需用 NSNumber 封裝); 常用建構:@[]、array
Objective-C 集合類深度解析:NSSet 與 NSMutableSet 完全指南
NSSet 核心特性 無序、不重複的物件集合; 查找效率極高(哈希表實現),適合頻繁判斷「是否包含」; 不可變,對應可變子類 NSMutableSet。
Objective-C 單例模式最佳實踐:封鎖 alloc/init/copy 確保唯一實例
基本單例的缺陷 僅用 dispatch_once 回傳共享實例,無法阻止外部呼叫 [[Singleton alloc] init] 或 [singleton c
Objective-C 中 initialize 與單例模式的正確結合
initialize 方法特性 每個類別在第一次被使用前,系統會自動呼叫 + (void)initialize,且整個程式執行期間只會呼叫一次(子類別若未覆寫
C 指標編程筆記:選擇排序與二分查找的指標實現
直接選擇排序(Selection Sort) 基本思想:對無序序列進行 n-1 輪選擇,第 i 輪找出最小元素並與第 i 位置交換,實現「各回各家」。 #inc