C 語言基礎教程(二):陣列與指標的深度關係——等價性、差異與實務互換技巧
核心論點:陣列名「退化」為指標,但兩者本質不同 在大多數表達式中,陣列名 a 會隱性轉換為指向首元素的指標 &a[0] (型別 T*),這就是所謂的「退
C 語言基礎教程(二):陣列賦值詳解——數值陣列、字串陣列、指標陣列與 strcpy/snprintf 實務
陣列賦值:逐元素存入,無整體賦值運算子 C 語言不支援 arr1 = arr2; 或 arr = {1,2,3}; (僅初始化時可用大括號)。賦值必須逐元素或呼
C 語言基礎教程(二):指標變數初始化與動態記憶體配置——malloc/free 正確用法
指標初始化的核心原則:指向有效記憶體 宣告指標 int *p; 只配置指標本身 (4/8 bytes),不配置指向物件的空間。未初始化指標含隨機位址,解參考導致
C 語言基礎教程(二):變數賦值完整指南——標量、陣列、指標與字串處理
賦值:給已宣告變數存入特定值 賦值運算子 = 右結合,運算式值為左運算元賦值後的值。支援鏈式賦值 a = b = c = 0;。 1. 標量賦值 整數/浮點數
C 語言基礎教程(二):變數初始化完整規則——標量、陣列、指標與靜態/自動儲存期差異
初始化:宣告時賦予起始值 初始化規則取決於儲存期 (靜態 vs 自動) 與型別 (標量、陣列、指標)。 儲存期決定初始化時機與預設值 類別範例初始化時機
C 語言基礎教程(二):陣列變數完整指南——宣告、記憶體佈局、多維陣列與初始化
陣列:同型別元素的連續集合 陣列名代表首元素位址 (常量指標),元素在記憶體中連續排列,下標從 0 開始。 一維陣列宣告與基本屬性 int a[10];
C 語言基礎教程(二):四大儲存類別——auto、static、extern、register 深度解析
儲存類別指定符:決定變數「活多久、誰能看見、放哪裡」 Turbo C 2.0 (ANSI C89) 定義四種儲存類別指定符,互斥 (一個宣告僅能出現一個)。
C 語言基礎教程(二):變數三大類型——區域、形式參數、全域
變數宣告位置決定生命週期與作用域 Turbo C 2.0 依宣告位置將變數分為三類,掌握其差異是模組化程式設計的基礎。 1. 區域變數 — 函數內部自動管理
C 語言基礎教程(二):關鍵字與識別符完整規範
關鍵字:編譯器保留的專用標記 關鍵字在 Turbo C 2.0 (ANSI C 89 擴展) 中共 43 個,分為 ANSI 標準 (32) 與 Borland
C語言基礎教程(二):指針類型、void 類型、關鍵字與標識符規範
指針類型 * 指針存儲變量地址,本質是地址值。根據所指類型分類: int * 整型指針 float * 浮點指針 char * 字符指
C語言基礎教程(二):數據類型詳解——整型、浮點型、字符型
Turbo C 數據類型體系 基本類型:int、float、char、pointer、void。構造類型:struct、union(後續章節)。 整型 int
C語言動態內存管理與鏈表基礎(三):malloc/free、鏈表節點設計
為什麼需要動態內存 數組長度編譯期固定,無法應對運行時才知道大小的場景(如學生人數不定)。動態內存管理函數在堆區按需分配/釋放內存,實現動態數據結構(鏈表、樹、
C語言結構體進階(二):結構體指針、結構體數組指針、指針作函數參數
結構體指針 struct Student { int num; char *name; char sex; float score; }; struct St
C語言結構體入門(一):定義、聲明、成員訪問與初始化
為什麼需要結構體 現實實體常包含異構數據:學生有姓名、學號、性別、成績。數組要求元素同類型,無法直接建模。結構體(struct)將不同類型、固定數量、有序的成員