首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

C 語言 typedef int* A[100] 解析:A 是指向 int[100] 的指針類型

     編輯:程式設計綜合問答

聲明拆解

typedef int* A[100];  // 1. 先看 A[100] → A 是含 100 個元素的數組
                       // 2. 元素類型是 int* → A 是「指向 int 的指針」數組
                       // 3. typedef 後,A 成為該數組類型的別名

等價展開

// 原聲明等價於
typedef int* (A[100]);   // A 是數組類型:int* [100]

// 使用
A a;  // 展開為 int* a[100]; 即 a 是含 100 個 int* 的數組

記憶口訣:「從變量名向外螺旋」

  1. 找到標識符 A。
  2. 向右:[100] → 數組 100。
  3. 向左:int* → 元素類型「指向 int 的指針」。
  4. 結果:A 是「含 100 個 int 指針的數組」類型。

對比:typedef int (*A)[100];

typedef int (*A)[100];  // A 是指針,指向「含 100 個 int 的數組」
A a;  // 展開為 int (*a)[100]; a 是指向 int[100] 的指針

括號改變結合優先級,**面試高頻考點**。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved