int a[5]={1,2,3,4,5};printf("%d\n", *((int*)(&a+1)-2);

有说服力的笔试题有一定的期限,问:什么是结果,答案是4,为什么要挤?

我明白(不知道是不正确):

&a这是一个数组指针,类型int[5],然后&a添加1其实a+sizeof(int)*5,这是a[5]。转换为int该类型a+5,的结果a[3]=4。

版权声明:本文博客原创文章,博客,未经同意,不得转载。

时间: 2024-08-08 05:06:29

int a[5]={1,2,3,4,5};printf("%d\n", *((int*)(&a+1)-2);的相关文章

【组队训练】2016 ACM/ICPC Asia Regional Dalian Online

因为不是一队……毫无晋级的压力……反正有压力也进不去呵呵呵…… 开场zr看1006我看1010.. 1010我一直在wa... zr的1006倒是比较轻松的过了...然后我让他帮我看10.... 跟他讲了半天我代码的逻辑...然后我自己看出来的....比赛的代码....写的十分混乱.... #include <cstdio> #include <cstring> #include <algorithm> #include <vector> typedef l

poj 1985 Cow Marathon 【树的直径】

题目:poj 1985 Cow Marathon 题意:给出一个树,让你求树的直径. 分析: 树的直径:树上两点之间的最大距离. 我们从任意一点出发,BFS一个最远距离,然后从这个点出发,在BFS一个最远距离,就是树的直径. AC代码: /* POJ:1985 Cow Marathon 2014/10/12/21:18 Yougth*/ #include <cstdio> #include <iostream> #include <algorithm> #include

编程之美—烙饼排序问题(JAVA)

一.问题描述 星期五的晚上,一帮同事在希格玛大厦附近的"硬盘酒吧"多喝了几杯.程序员多喝了几杯之后谈什么呢?自然是算法问题.有个同事说:"我以前在餐      馆打工,顾客经常点非常多的烙饼.店里的饼大小不一,我习惯在到达顾客饭桌前,把一摞饼按照大小次序摆好--小的在上面,大的在下面.由于我      一只手托着盘子,只好用另一只手,一次抓最上面的几块饼,把它们上下颠倒个个儿,反复几次之后,这摞烙饼就排好序了.我后来想,这实际上是个     有趣的排序问题:假设有n块大小不一

进程间通信之消息队列

什么是消息队列 消息队列提供了一种从一个进程向另一个进程发送一个数据块的方法.  每个数据块都被认为含有一个类型,接收进程可以独立地接收含有不同类型的数据结构.我们可以通过发送消息来避免命名管道的同步和阻塞问题.但是消息队列与命名管道一样,每个数据块都有一个最大长度的限制. 相关接口函数 ftok函数 头文件 #include <sys/types.h> #include <sys/ipc.h> 函数原型 key_t ftok( const char * fname, int id

PAT 团体程序设计天梯赛-练习集 题解(凑零钱,堆栈,社交集群)

开始准备cccc(cry)天梯赛了,第一周训练题,把官网挂出的训练题刷完了,对pat有了一点点的熟悉感. L1-1  就不说了... L1-2 打印沙漏 一个变量保存空格数,一个变量保存沙漏符号数,打印就行了,但这题话说wrong好几次啊,坑点是沙漏符号后面不打印空格,orz... <span style="font-size:14px;">#include<iostream> #include<stdio.h> #include<math.h

搜索(DLX):HOJ 1017 - Exact cover

1017 - Exact cover Time Limit: 15s Memory Limit: 128MB Special Judge Submissions: 6751 Solved: 3519 Description There is an N*M matrix with only 0s and 1s, (1 <= N,M <= 1000). An exact cover is a selection of rows such that every column has a 1 in e

4、面向对象

1.基本的概念     类,指的是莫一类的事物的概括,是一个抽象的     对象:指的是某一类里面的一个实体,是具体的 类:     通常包含了属性和行为.属性:被描述类的静态的特征,老虎的颜色.体重等静态的属性:行为:描述类的动态特征,比如跑 类的继承:     继承之后的类,继承了原先的类的所有的属性和行为:继承之后的类,也可以有自己特有的属性和行为:                                  在类A的基础上建立一个新类B,类A成为基类或者父类,类B成为派生类或者子类

UVa 101 - The Blocks Problem STL

题目:给你n个方块,有四种操作: 1.move a onto b,把a和b上面的方块都放回原来位置,然后把a放到b上面: 2.move a over b,把a上面的放回原处,然后把a放在b所在的方块堆的上面: 3.pile a onto b,把b上面的放回原来位置,然后把a和a上面的方块整体放到b上面: 4.pile a over b,把a和a上面的方块整体放到b所在堆的上面. 分析:模拟,数据结构.观察操作,如果是move就是先把a上面的还原,如果是onto就是先把b上面的还原. 然后,就是移

BZOJ 1212: [HNOI2004]L语言( dp + trie )

因为单词很短...用trie然后每次dp暴力查找...用哈希+dp应该也是可以的.... --------------------------------------------------------------------------- #include<cstdio> #include<cstring> #include<cctype> #include<algorithm> #include<bitset> using namespace