首页 > 代码库 > 学以致用一:得到数组的最后一个元素。
学以致用一:得到数组的最后一个元素。
如题上,通常的思想是遍历一遍啦,这里有个比較有意思的方法(程序猿面试宝典上有对应的题 四版,p78)
利用了指向数组的指针来完毕:
[cpp] view
plaincopy
- // 得到数组的最后一个数 - 使用指向数组的指针来完毕
- #include <stdio.h>
- int main()
- {
- printf(" 得到数组的最后一个数的趣味实现 \n");
- const int MAXN = 8;
- int a[MAXN] = {1, 2, 4, 8, 16, 32, 64, 128};
- int *p = (int*)(&a + 1); //a是一个地址。&a是双指针,能够理解为一个二维数组的地址。这里加1便是数组总体加一行。p指向第九个元素。这里指向下一个元素是没问题的。若是取其值就会有问题了。
- printf("%d\n", *(p - 1)); //为128
- return 0;
- }
学以致用一:得到数组的最后一个元素。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。