标题:看这个题目:int a[3][4],b[3][4],(*prt)[3];
只看楼主
phxsun
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2005-8-20
 问题点数:0 回复次数:5 
看这个题目:int a[3][4],b[3][4],(*prt)[3];
若有定义:int a[3][4],b[3][4],(*prt)[3];且0〈=i〈3,则正确的伏值语句是:
a) prt=a;       b)  prt=b;    c)  prt=b[i];   d)  prt=a[i];
搜索更多相关主题的帖子: prt int 
2005-08-20 23:48
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
得分:0 
题错了。

九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2005-08-21 09:54
phxsun
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2005-8-20
得分:0 
若有定义:int a[3][4],b[3][4],(*prt)[3];0〈=i〈3, 则正确的赋值语句是: a) prt=a; b) prt=b; c) prt=b[i]; d) prt=a[i]; 没有呀?答案是选A呀 我不知道是为什么?那位高人帮忙看一下 先谢过
2005-08-21 15:49
ChenMo
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:3
帖 子:481
专家分:10
注 册:2004-4-8
得分:0 
我也觉得题目错了。

欢迎加入 MVC 技术讨论群(新群:90093426)
2005-08-21 19:16
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
得分:0 
以下是引用phxsun在2005-8-21 15:49:52的发言: 若有定义:int a[3][4],b[3][4],(*prt)[3];0〈=i〈3, 则正确的赋值语句是: a) prt=a; b) prt=b; c) prt=b[i]; d) prt=a[i]; 没有呀?答案是选A呀 我不知道是为什么?那位高人帮忙看一下 先谢过
题错了,如果你搞清基本概念,就不会有如此凝问了。 int (*prt)[3] prt是一个指针,一个指向有三个int成员的数组的指针,一个指向指针的指针(二级指针)。 而题中的int数组却是3*4,却a[0],a[1],a[2]有四个成员(b也是这样)所以,prt根本不能正确指向这两个数组。 如果a数组定义为 int a[4][3];则a) prt=a; 对 注意,即便是a数组定义为 int a[4][3]; d) prt=a[i]; 还是错的,在TC中可能会有个警告,但会让你通过编译。但在其它现代编译器中(C99标准)可能就不让通过了。

九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2005-08-21 21:18
phxsun
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2005-8-20
得分:0 
谢谢,我已经明白了
2005-08-22 09:59



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-25685-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.234106 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved