面试单片机工程师的一道C语言题目,高手来算一算

[复制链接]
3201|16
 楼主| jey3282 发表于 2013-1-29 15:45 | 显示全部楼层 |阅读模式
What value is returned by this function?
int PointerTest(void)
{
   int data[5], index, *item;
   for(index = 0; index < 5; index++)
      data[index] = index*2;
   item = data;
   item++;
   item = &data[*item];
   return *item;
}
求指针返回的值是多少?
wofjvbn 发表于 2013-1-29 17:38 | 显示全部楼层
返回值为4
atonic 发表于 2013-1-29 17:52 | 显示全部楼层
应该是32吧,也要看这个是几位的芯片的
21ID 发表于 2013-1-30 15:31 | 显示全部楼层
4,不需要高手来解答吧
SLEET1986 发表于 2013-1-30 16:12 | 显示全部楼层
胡斯哲 发表于 2013-1-30 19:41 | 显示全部楼层
suhaocong 发表于 2013-1-30 23:39 | 显示全部楼层
返回值为4
h185540860 发表于 2013-1-31 11:46 | 显示全部楼层
应该是4吧
拿起书本 发表于 2013-1-31 15:49 | 显示全部楼层
看来面试的话是通不过的呢......呵呵
2008雨声 发表于 2013-1-31 23:30 | 显示全部楼层
ufo277514 发表于 2013-2-7 09:46 | 显示全部楼层
Socrazyman 发表于 2013-2-7 11:02 | 显示全部楼层
4!!!!!!!!!!!!!!!!!1
u880 发表于 2013-2-12 22:58 | 显示全部楼层
4 没错
huigoushang 发表于 2013-2-12 23:08 | 显示全部楼层
不确定唉
lingdianhao 发表于 2013-7-15 12:39 | 显示全部楼层
What value is returned by this function?
int PointerTest(void)
{
   int data[5], index, *item;  //定义包含5个元素的整型数组data,一个整型变量index,一个指向整型变量的指针。
   for(index = 0; index < 5; index++) //将整型数组5个元素分别赋值为 0 2 4 6 8.
      data[index] = index*2;
   item = data; //将指针指向整型数组首地址,也为第一个元素地址。
   item++;  //指针加1,指向数组中第二个元素。
   item = &data[*item];  *item为数组第二个元素的值为2,&data[2]即把数组第三个元素地址赋予指针。
   return *item; //返回第三个元素的值,为4!
}
求指针返回的值是多少?
huangfeng33 发表于 2013-7-15 18:46 | 显示全部楼层
面试现场出这种题的人是不是有什么问题啊^^,这现场也能答出来?
明泽丽湾 发表于 2013-9-23 14:26 | 显示全部楼层
个人觉得是4
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:最新的合肥二手家具回收http://www.hfxuewen.com/信息平台,你还等什么呢?赶紧去看看吧!

10

主题

10

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部