标题:红色部分不太理解,特别是 p=*a;可不可以用 p=a 代替了
只看楼主
chenziguo
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2013-10-25
结帖率:58.33%
 问题点数:0 回复次数:7 
红色部分不太理解,特别是 p=*a;可不可以用 p=a 代替了
#include "stdio.h"
main()
{
    int a[3][2],*p;
    float ave=0;
    printf("input data to a:");
      for(p=*a;p<*a+3*2;p++){
      scanf("%d",p);
      ave+=*p;
}
ave/=6;
printf("output\n");
for(p=*a;p<*a+6;p++)
printf("%3d",*p);
printf("\n the average is %.2f",ave);
printf("\n");
}
搜索更多相关主题的帖子: include 
2014-08-14 14:23
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
你的代码是正确代码吗

DO IT YOURSELF !
2014-08-14 14:34
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
得分:0 
可以替换 但类型不一样 会有warning
2014-08-14 16:16
BIANSHOU
Rank: 1
来 自:贵州贵阳
等 级:新手上路
帖 子:3
专家分:0
注 册:2014-8-11
得分:0 
我觉得不能替换。

编筐筐
2014-08-14 20:25
chenziguo
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2013-10-25
得分:0 
回复 2 楼 wp231957
是正确的代码,
2014-08-15 10:32
chenziguo
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2013-10-25
得分:0 
回复 3 楼 zklhp
那是什么原因了,能够具体介绍p=*a的意义吗
2014-08-15 10:33
四维俊
Rank: 2
等 级:论坛游民
帖 子:21
专家分:46
注 册:2013-11-21
得分:0 
int * 是个指针类型,int * p中的p是一个指针变量,它能储存的是地址.
int a[3][2],这是个二维数组,a储存的是a[0]的地址,而a[0]又是一个有
两个元素的数组.所以a[0]是a[0][0]的地址;*a==a[0][0];
表达的不太好.还是自己多看看书吧.
2014-08-15 11:43
步向巅峰
Rank: 5Rank: 5
来 自:河南
等 级:贵宾
威 望:17
帖 子:110
专家分:371
注 册:2013-4-26
得分:0 
a[3][2]是二维数组
int *p;//说明p是一般指针
一般指针无法接收二维数组,所以肯定不能换
lz好好看看一般指针与数组指针的使用吧
2014-08-15 14:25



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




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

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