解釋C程式語言中的指標陣列
指標是一個儲存另一個變數地址的變數。
特點
- 指標節省記憶體空間。
- 由於直接訪問記憶體位置,指標的執行時間更快。
- 藉助指標,可以高效地訪問記憶體,即動態分配和釋放記憶體。
- 指標與資料結構一起使用。
指標宣告和初始化
考慮以下語句:
int qty = 179;
在記憶體中,變數可以表示如下:

宣告指標
這意味著“p”是一個指標變數,它儲存另一個整型變數的地址,如下所示:
Int *p;
指標的初始化
地址運算子 (&) 用於初始化指標變數。
例如:int qty = 175;
int *p;
p = &qty;
指標陣列
它是地址的集合(或)指標的集合。
宣告
以下是指標陣列的宣告:
datatype *pointername [size];
例如:
int *p[5];
它表示一個可以儲存5個整型元素地址的指標陣列。
初始化
“&”用於初始化。
例如:
int a[3] = {10,20,30};
int *p[3], i;
for (i=0; i<3; i++) (or) for (i=0; i<3,i++)
p[i] = &a[i];
p[i] = a+i;訪問
間接運算子 (*) 用於訪問。
例如:
for (i=0, i<3; i++)
printf ("%d", *p[i]);示例程式
以下是指標陣列的程式:
#include<stdio.h>
main ( ){
int a[3] = {10,20,30};
int *p[3],i;
for (i=0; i<3; i++)
p[i] = &a[i];
printf ("elements of the array are
");
for (i=0; i<3; i++)
printf ("%d \t", *p[i]);
}輸出
執行上述程式時,會產生以下結果:
elements at the array are : 10 20 30
示例2
以下是指向字串的指標陣列的程式:
#include <stdio.h>
#include <stdlib.h>
int main(void){
char *a[5] = {"one", "two", "three", "four", "five"};
int i;
printf ( "the strings are at locations:
");
for (i=0; i<5; i++)
printf ("%d
", a[i]);
return 0;
}輸出
執行上述程式時,會產生以下結果:
The strings are at locations: 4210688 4210692 4210696 4210702 4210707
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP