指针与数组的示例代码(帮助理解)
2017-08-11 15:35
260 查看
以下是指针与数组关系的事例代码,帮助理解
#include #define DEBUG 1 #if DEBUG int main() { int a[5] = {1, 2, 3, 4, 5}; int b[2][3] = {{1, 2, 3}, {4, 5, 6}}; /*一维数组*/ printf("*a is %x\n", *a); //一维数组的首地址中的值为1, printf("a is %x\n", a); //一维数组的首地址 printf("&a is %x\n", &a); //一维数组的首地址,读取方式为一维数组大下 printf("(&a)+1 is %x\n", (&a) + 1); //一维数组的首地址 printf("a[0] is %x\n", a[0]); //一维数组的首元素 printf("&a[0] is %x\n", &a[0]); //首元素的地址 printf("a+0 is %x\n", a + 0); //a是数组名,是一个一级指针常量 printf("a+1 is %x\n", a + 1); //a的读取方式为一个int的大小 printf("\n"); /*二维数组*/ printf("**b is %p\n", **b); //二维数组的首元素的值 printf("*b is %p\n", *b); //二维数组第0行(一维数组)一维数组首元素的地址 printf("b is %p\n", b); //b是一个二级常量指针 printf("&b is %p\n", (&b)); //读取方式为一个二维数组大小 printf("(&b)+1 is %p\n", (&b) + 1); printf("(*b)+1 is %p\n", (*b) + 1); //二维数组第0行(一维数组)第二个元素地址 printf("b is %p\n", b); //b是一个二级常量指针,读取方式为一行 printf("b+1 is %p\n", b + 1); //二维数组第1行(一维数组)元素地址 printf("\n"); printf("&b[0] is %p\n", &b[0]); //二维数组第0行(一维数组)一维数组首元素的地址,读取方式为一行元素 //printf("&(&(b[0])) is %p\n", &(&(b[0])));//error: lvalue required as unary '&' operand printf("(&b[0])+1 is %p\n", (&b[0]) + 1); //二维数组第1行(一维数组)一维数组首元素的地址 printf("b[0] is %p\n", b[0]); //读取方式为一个int元素 printf("b[0]+1 is %p\n", b[0] + 1); printf("\n"); printf("*b[0] is %p\n", *b[0]); printf("*(b[0]+1) is %p\n", *(b[0] + 1)); printf("\n"); printf("b[0][0] is %p\n", b[0][0]); printf("&b[0][0] is %p\n", &b[0][0]); //读取方式为一个int大小 printf("(&b[0][0])+1 is %p\n", (&b[0][0]) + 1); return 0; } #endif
相关文章推荐
- 数组和指针内存分配示例代码
- 数组和指针内存分配示例代码
- C语言计算数组的元素和(帮助理解指针)
- C语言 指针数组详解及示例代码
- 理解C语言指针和数组的关系的代码
- 根据一段代码理清一些变量,常量,数组,指针的关系及理解
- 理解 指针数组 数组指针 函数指针 函数指针数组 指向函数指针数组的指针
- 函数指针与函数指针数组的简单理解以及vector
- 理解 指针数组 数组指针 函数指针 函数指针数组 指向函数指针数组的指针
- 字符串:KMP Eentend-Kmp 自动机 trie图 trie树 后缀树 后缀数组 个人代码示例
- 【C语言基础】对指针数组,数组指针,函数指针, 函数指针数组,指向函数指针数组的指针的理解
- C语言小程序 数组操作示例代码
- Integer示例程序反编译代码的分析,附带“==”的再次理解
- 深入理解C/C++数组和指针
- 利用eclipse中的各种功能帮助你理解代码
- 深入理解 [指针函数] 、[函数指针]、[指针的指针]、[指向指针数组的指针]
- 理解数组,结构 ,函数指针,指针函数,数组指针,指针数组,结构指针的定义和实现
- javascript中数组中求最大值示例代码
- php三维数组去重(示例代码)
- strcpy_s 用法 及 指针数组的理解