您的位置:首页
学以致用一:得到数组的最后一个元素。
2017-04-28 17:50
190 查看
如题上,通常的思想是遍历一遍啦,这里有个比較有意思的方法(程序猿面试宝典上有对应的题 四版,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;
}
利用了指向数组的指针来完毕:
[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;
}
相关文章推荐
- 给数组添加一个根据指定下标删除元素的方法、得到0-100的随机数不重复(js)、得到外联样式的css样式值
- JS移除数组中的某个元素而得到新数组
- php 获取数组第一个元素 以及最后一个元素 && 最后一个元素的键名
- 一个数组内的元素挨个相加得到的值组成一个新数组(算法)
- 算法题: 求一个整数数组中,通过元素加减运算得到指定结果的所有运算过程. 例如【5,4,6,7,1】= 9 ?
- 2014年去哪儿网笔试题--给定一个整型数组,对这个整型素组排序,使得按序拼接数组各元素得到的值最小。
- 输入一个一维数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
- 输入一个一维数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组
- php数组函数序列之array_pop() - 删除数组中的最后一个元素
- WebX5 Data遍历以及获取数组最后一个元素(更新)
- [西山居笔试]分别写一个宏和函数来获取元素个数 如count(a) 会得到a数组元素个数
- 将数组元素循环流动的问题(即数组第一个元素变成最后一个,后面的补上,如此循环几次)
- 将数据中的元素都向前移动一个位置,最后一个元素的值是原来第一个元素的值,然后输出这个数组。
- java 输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
- 取数组的最后一个元素
- 取数组的最后一个元素
- JavaScript 获取数组的最后一个元素
- 浅析C/C++,Java,PHP,JavaScript,Json数组、对象赋值时最后一个元素后面是否可以带逗号
- js 数组操作常用方法。 push():在数组后面加入元素,并返回数组的长度 unshif()t:在数组前面加入元素,并返回数组的长度 pop()删除最后一个元素
- php访问数组最后一个元素的函数end()用法