标题:向达人求教,有关数组指针的问题??
取消只看楼主
wwxx
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2007-3-26
 问题点数:0 回复次数:1 
向达人求教,有关数组指针的问题??

#include <stdio.h>
#include <math.h>

main()
{
static int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23};
int *p;
/*
for (p=a[0];p<a[0]+12;p++)
{if ((p-a[0])%4==0) printf("\n");
printf("%4d",*p);
}
*/

for (p=a;p<a+12;p++)
{if ((p-a)%4==0) printf("\n");
printf("%4d",*p);
}
}


程序如上,我把源程序中的注释掉,自己的写在下面。
源程序运行结果正确,我自己的运行有警告,如下:
警告 e:\c-language\c-code\code04.c 16:指针变换后指向其它类型在main汉书中
对应英文如下:
Warning e:\c-language\c-code\code04.c 16:Suspicious pointer conversion in function main
正确的运行结果如下:
1 3 5 7
9 11 13 15
17 19 21 23

错误的运行结果如下:
1 3 5 7
9 11 13 15
17 19 21 23
1013349 100 0
4864 51412842054
2056539648695887
4357-254 -1 -1
-1 -1 -1 -1
1285 -1 -1 -1
-1 -1 -1 -1
-1-241 5474095
-1 -1-237 767

搜索更多相关主题的帖子: 指针 printf include 
2007-03-29 15:54
wwxx
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2007-3-26
得分:0 
2007-03-29 16:35



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




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

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