HDU 1000 A+B Problem:C 語言標準輸入輸出模板與 EOF 處理詳解
題目大意 讀取多行輸入,每行兩個整數 A、B,輸出 A+B,直到檔案結尾 (EOF)。 標準 AC 代碼 #include <stdio.h>
C/C++ 面試必考:sizeof 操作元為陣列參數與 malloc 指標時的大小計算
題目 void Func(char str[100]) { sizeof(str) = ? // ① } void *p = malloc(100);
浮點數陷阱:為什麼 100 個 0.1 相加不等於 10?IEEE 754 深度解析與避坑指南
現象重現 float sum = 0; for (int i = 0; i < 100; i++) sum += 0.1f; printf(%f\n, sum)
C 語言資料結構入門:結構體、單向/雙向/循環鏈表完整實作教學
第 3 章:資料結構核心——結構體與鏈表 資料結構是計算機科學核心,亦是考研專業課重點。本章涵蓋結構體、鏈表、堆疊/佇列、串/廣義表、二叉樹、圖。本文聚焦結構體
C 語言字串排序實戰:指標陣列法對五國名稱按字母序排序
題目:五國名稱字母序排序 輸入:China, America, Australia, France, Germany 輸出:按 ASCII 字母序遞增排序。
C 語言 const 關鍵字深度解析:指標常量、常量指標與多級 const 讀寫規則
核心原則:const 修飾「右側第一個符號」 符號定義:資料型別 [*] 或 [*] 變數名 或 *。 依此規則由右向左讀取宣告,即可精確判斷什麼被鎖定為常量
C 語言 printf 格式化輸出技巧:%02hhX 完美解決位元組十六進制列印難題
痛點:位元組十六進制輸出的混亂現狀 調試網路封包、二進制資料時,常需將 unsigned char/signed char 以十六進制列印。常見問題: %X
GCC -fstack-protector 堆疊保護機制原理、反組譯對比與實戰除錯
背景:詭異的堆疊回溯 /lib/i386-linux-gnu/libc.so.6(__fortify_fail+0x45) [0xb2c4b0e5] /lib/
C 語言字串反轉完全指南:從整數陣列到字串的演算法優化之路
整數陣列反轉:基礎邏輯建立 對 {1,2,3,4,5} 反轉為 {5,4,3,2,1},雙指標對稱交換: for (int i = 0; i < SIZE/2;
演算法圖解:插入排序法原理、C 語言實作與《演算法導論》經典圖示
生活中的插入排序:整理麻將/撲克牌 抓一把亂序的牌,從第二張開始,每拿一張就插入已整理好的手牌中適當位置——這就是插入排序的直覺邏輯。電腦雖需逐一比較移動,但極
glibc 記憶體管理架構深度剖析:虛擬記憶體、分頁、段與分配機制
虛擬記憶體:程式眼中的線性位址空間 每個行程看到的是獨立、線性的 0~MAX 虛擬位址空間,但並非連續——部分區段可能缺失(無對應實體記憶體)。虛擬記憶體以頁為
glibc 錯誤報告機制深度解析:errno、strerror、perror 與 error() 完整指南
核心概念:錯誤碼與 errno glibc 函式通常回傳特殊值(-1、NULL、EOF)表示失敗,但無法得知具體錯誤原因。真正的錯誤資訊儲存在全域變數 errn
GCC 頭文件搜尋路徑、宏定義防重複包含與函式宏偵錯技巧全解析
GCC 頭文件搜尋機制詳解 標準搜尋路徑順序 GCC 依序搜尋以下目錄(#include <...>): /usr/local/include l
C 語言經典演算法:1-2+3-4+...+99-100 交替加減求和三種實現
題目回顧 計算數列 1 - 2 + 3 - 4 + 5 ... + 99 - 100 的總和。這是一個經典的迴圈與條件判斷練習,展示不同思路的程式碼風格與效能差
Linux C 記憶體管理進階:半動態分配 alloca() 深度解析
什麼是「半動態」記憶體分配? 在 GNU C 中,alloca() 提供了一種獨特的記憶體分配方式——「半動態」。它像 malloc() 一樣能在執行期依據變數
Linux C 語言動態記憶體洩漏追蹤實戰:mtrace 與 muntrace 完整指南
前言:C 語言記憶體管理的痛點 C 語言缺乏垃圾回收機制,開發者必須手動管理動態記憶體的分配與釋放。一旦發生「有借無還」的情況——即呼叫 malloc、real
Linux C Obstack:基於區域的高效內存池管理機制詳解
什麼是 Obstack? Obstack = Object Stack。GNU C 庫擴展,屬於Region-based memory management(基
Linux C 動態內存洩漏追蹤:mtrace/muntrace 實戰指南
背景 C 無 GC,malloc 後忘 free 導致洩漏。GNU C 庫提供 mtrace/muntrace 追蹤工具。 使用步驟 設置環境變量 指向可寫