C 語言字串輸入輸出函數完整對比:scanf/printf vs gets/puts
核心差異總覽 函數讀取停止條件緩衝區殘留空格處理換行處理安全性 scanf(%s, s)空白字元 (空格/換行/Tab)停止字元留在 stdin**停止讀取*
C 語言指標完整學習筆記:四大核心層面與進階型別解讀
指標四大核心屬性 搞懂指標必須明確區分: 指標的型別:指標本身的型別 (宣告去掉變數名)。 指標指向的型別:解參考 *ptr 得到的型別。 指標的值 (位址)
C++ 虛函式在建構/解構函式與成員函式中呼叫行為差異
核心規則 建構函式中:虛函式解析為**當前類別**的版本 (衍生類別尚未建構完成)。 解構函式中:虛函式解析為**當前類別**的版本 (衍生類別已解構完畢)。
C 語言 getdate() 取得系統日期完整範例 (DOS/舊版編譯器)
函數原型與結構體 #include <dos.h> // 僅限 Turbo C、Borland C、MS-DOS 環境 struct date {
atoi 與 itoa 手寫實作:字串與整數轉換核心邏輯
atoi:字串轉整數 = 0 && *str INT_MAX) return INT_MAX; if (sign == -1 && -resu
C++ delete 與 delete[] 差異深度解析:建構函式、陣列與未定義行為
核心規則 配置方式釋放方式行為 new Tdelete ptr呼叫 1 次解構函式,釋放單一物件記憶體 new T[N]delete[] ptr呼叫 N 次解
C++ 模板參數 typename 與 class 差異與 typename 進階用法
模板參數列:完全等價 template <class T> void func1(T t); // C++98 風格 template &l
C/C++ swap 交換四大寫法:從暫存變數到位運算與算術技巧
四種經典實作 1. 暫存變數法(標準、通用、最安全) void swap1(int &a, int &b) { int tmp = a; a
C++ const 引用與非 const 引用:綁定規則、臨時物件與最佳實踐
定義與基本語法 const int ci = 10; const int &cr = ci; // OK:const 引用綁定 const 物件 // in
C++11 輕量級事件機制實作:std::function 與 std::bind 打造觀察者模式
設計目標與取捨 為追求簡潔,刻意捨棄: 重複綁定檢測(std::function 不可比較)。 回呼優先級/條件過濾。 執行緒安全(單執行緒 UI 典型場景足
C++ 指標與引用完整對比:選擇指南與最佳實踐
語法與語意核心差異 特性指標引用 宣告符號*& 存取成員. 可為空是 (nullptr)否(必須綁定物件) 可重新綁定是否(初始化後固定) 記憶體佔用指標大小
漢諾塔問題完整解析:遞歸思維、數學歸納法證明與 C 語言實現
問題描述 經典漢諾塔:三根柱子 A、B、C。A 柱自下而上疊放 n 個圓盤 (大在下、小在上)。目標:將所有圓盤移至 C 柱,過程中可借用 B 柱,規則: 每
判斷 CPU 位元序的兩種經典方法:指標轉型與聯合體
背景知識 大端序:低位址存高位元組(網路序、PowerPC 早期)。 小端序:低位址存低位元組(x86、ARM 預設)。 跨平台傳輸需統一轉換(htonl/n
C++ const 與 #define 差異深度解析:從編譯原理到最佳實踐
根本差異:前處理器 vs 編譯器 特性#defineconst 處理階段前處理器(文字替換)編譯器(語意分析) 符號表不進入,除錯器不可見進入,完整除錯支援
C/C++ volatile 關鍵字深度解析:編譯器優化與硬體存取
核心定義 volatile 告訴編譯器:該變數的值可能在程式不可見的情況下被改變,因此: 禁止將變數快取於暫存器。 禁止刪除「看似多餘」的讀寫操作。 每次存取
C 語言經典入門 10 題:從排列組合到圖形輸出
題目清單與核心考點 #題目核心考點 1四數字組成不重複三位數三層巢狀迴圈 + 去重判斷 2企業利潤提成獎金計算分段函數、累進稅率邏輯 3完全平方數尋找sqrt