1. 程式人生 > 實用技巧 >C 陣列型別語法總結

C 陣列型別語法總結

陣列型別語法總結

陣列指標 和 指標陣列 區分

陣列指標是一個指標,只對應型別的陣列。指標陣列是一個數組,其中每個元素都是指標
陣列指標遵循指標運演算法則。指標陣列擁有c語言陣列的各種特性

陣列型別重新命名

C 通過 typedef 為陣列型別 重新命名

**格式 : **typedef type (name)[size]

定義陣列型別

typedef int (aint)[10];
typedef float (afloat)[10];

用陣列型別定義陣列

aint iarray; //定義了一個數組
afloat farray; //定義了一個數組

定義指標陣列型別

typedef int (*Paint)[10];
typedef float (*Pafloat)[10];

定義指向陣列的指標

type(*pointer)[n]; 
//pointer 是一個指標,type代表指向的陣列的型別,n為指向的陣列的大小。

例:

#include <stdio.h>
typedef int (aint)[10];   //定義一個數組型別
typedef int (*Paint)[10]; //定義一個指標陣列型別

int main()
{

	int a[10] = {0};

	aint myarr;
	myarr[0] = 8;
	printf("%d\n", myarr[0]);

	
	Paint Pmyarr;
	Pmyarr = &a;
	(*Pmyarr)[0] = 10;
	printf("%d\n", a[0]);

	int (*pointer)[10];		  //定義一個指向陣列型別的指標
	pointer = &a;
	(*pointer)[0] = 20;
	printf("%d\n", a[0]);
}