数组名和取地址数组名的区别
来源:互联网 发布:php记账系统源码 编辑:程序博客网 时间:2024/05/23 10:39
#include<stdio.h>int main(){int a1[5] = { 1, 2, 3, 4, 5 };int a2[2][3] = { { 1, 2, 3 }, { 4, 5, 6 } };//a1是首元素地址,+1步长是4字节; &a1地址也是首元素的地址,但是+1步长是整个数组步长+1的步长20字节,int* p1 = (int*)(&a1 + 1);int* p2 = (int*)(&a2 + 1);printf("%d\n",*(a1+1));//2printf("%d\n", *(p1 - 1));//5 减去1就是最后一个元素printf("%d\n", *(int*)(a2 + 1));//4printf("%d\n", *(p2 - 1));//6getchar();return 0;}
总结:数组名和对数组取地址的区别就是步长不一样
阅读全文
0 0
- 数组名和数组名取地址的区别
- 数组名和数组名取地址的区别
- 数组名和数组名取地址的区别
- 数组名和数组名取地址的区别
- 数组名和数组名取地址的区别?
- 关于“数组名”和“数组名取地址”的区别
- 数组名和取数组名地址的区别
- 数组名和数组名取地址的区别
- 数组名和数组名取地址的区别
- 数组名和数组名取地址的区别
- 数组名和数组名取地址的区别
- 数组名和数组名取地址的区别
- 数组名和数组名取地址的区别
- 数组名和数组名取地址的区别
- 数组名和数组名取地址的区别
- 数组名和数组名取地址的区别
- 数组名和数组名取地址的区别
- 数组名和数组名取地址的区别
- 多线程共享数据
- 在C#中调用EVAL函数方法,通过字符串计算
- ubuntu14.04英文环境下安装中文输入法
- 基础数学
- 利用xinetd进行时间同步
- 数组名和取地址数组名的区别
- lakeshore自学笔记(一)
- Bootstrap 中的 aria-label 和 aria-labelledby
- Android初学——开机宣传界面
- LinkedList简介
- Thinkphp5之多语言
- Python 导入模块是的
- JAVA项目经验(转自大牛的经验分享)
- QT:内存泄漏