对于数组与指针的理解
2012-09-10 22:11
239 查看
/************************************************************************/ /* 深入理解指针与数组的区别 */ /************************************************************************/ #include<stdio.h> int array_list[2][3] ={{1,2,3},{1,2,3}}; int (*p)[3]; int array_list1[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9 , 10}; int array_list2[2][3][4] = {{{1,2,3,4},{5,6,7,8},{9,10,11,12}},{{13,14,15,16},{17,18,19,20},{21,22,23,24}}}; int main() { int *p; p = array_list[0]; printf("array_list = %d\n", array_list); printf("array_list[0] = %d\n", array_list[0]); printf("array_list[1][1] = %d\n", array_list[1][1]); printf("*(array_list[1] + 1) = %d\n", *(array_list[1] + 1)); printf("*((int *)(array_list + 1) -2) = %d\n", *((int *)(array_list + 1) -2)); printf("*(p + 1) = %d\n", *(p+1)); printf("*(*(array_list + 1) + 1) = %d\n", *(*(array_list + 1) + 1)); //比较怪癖的东西,其实本质上是一样的。 printf("1[array_list1] = %d\n", 1[array_list1]); printf("array_list2[1][1][1] = %d\n", array_list2[1][1][1]); printf("(*(*(*(array_list2+1)+1)+1)) = %d\n", (*(*(*(array_list2+1)+1)+1))); return 0; }
相关文章推荐
- 对于数组和指针的理解
- 对于数组指针的一点理解
- 对于数组指针—指针数组;函数指针—函数指针数组,指向函数指针数组的指针,的理解
- 对于C语言中数组名是指针的理解
- 对于数组和指针的理解
- 对C/C++中多维数组指针的理解
- 数组名和指针的深入理解(C++)
- 二位数组与指针理解
- c语言之指针数组理解二
- 对于一级指针的小小理解
- Exe 3 —— n^n幂和 (长整数的乘法和加法,以及对于字符数组和字符串的理解)
- 理解 指针数组 数组指针 函数指针 函数指针数组 指向函数指针数组的指针
- 深入理解计算机操作系统——第3章:数组,异质的数据结构,指针
- 深入理解指针、数组
- 形参和实参理解 数组指针的两个例子
- 个人理解:关于指针数组、数组指针、函数指针、函数指针数组、函数指针数组指针
- 指针数组再理解
- C语言数组和指针的理解_在取地址运算上的操作_指针加减操作_a 和&a 的区别
- 根据一段代码理清一些变量,常量,数组,指针的关系及理解
- 对二级指针、指针数组、二维数组名的理解1