用 C 语言解释指针和二维数组
指针是一个存储另一个变量地址的变量。
特点
指针节省内存空间。
由于直接访问内存位置,指针的执行时间更快。
借助指针,可以高效地访问内存,即动态地分配和释放内存。
指针用于数据结构。
指针和二维数组
二维数组的内存分配如下 −
int a[3] [3] = {1,2,3,4,5,6,7,8,9};

a[1] [2] = *(1234 + 1*3+2) = *(1234 + 3+2) = *(1234 + 5*4) // 4 is Scale factor = * (1234+20) = *(1254) a[1] [2] = 6
示例
以下是用于指针和二维数组的 C 程序 −
#include<stdio.h>
main ( ){
int a[3] [3], i,j;
int *p;
clrscr ( );
printf ("Enter elements of 2D array");
for (i=0; i<3; i++){
for (j=0; j<3; j++){
scanf ("%d", &a[i] [j]);
}
}
p = &a[0] [0];
printf ("elements of 2d array are");
for (i=0; i<3; i++){
for (j=0; j<3; j++){
printf ("%d \t", *(p+i*3+j));
}
printf ("
");
}
getch ( );
}输出
当执行上述程序时,将产生以下结果 −
enter elements of 2D array 1 2 3 4 5 6 7 8 9 Elements of 2D array are 1 2 3 4 5 6 7 8 9
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP