当前位置: 代码迷 >> C语言 >> 关于数组的一点疑问?
  详细解决方案

关于数组的一点疑问?

热度:334   发布时间:2008-06-18 09:07:16.0
关于数组的一点疑问?
我在程序中设置了一个数组!int zft[]={0,1,2,3};当我调用zft[6]的时候应该是什么呢?
搜索更多相关的解决方案: 疑问  

----------------解决方案--------------------------------------------------------
是0吧~....
----------------解决方案--------------------------------------------------------
有可能是随机数字,有可能程序崩溃。
----------------解决方案--------------------------------------------------------
LZ钻牛角尖
----------------解决方案--------------------------------------------------------
printf("%d",zft[6]);
----------------解决方案--------------------------------------------------------
int zft[]={0,1,2,3};当我调用zft[6]的时候应该是什么呢?

C中的数组在编译中是用指针来实现的,zft[6]就是*(zft+6),而这个地方你没有赋初值,当然是系统随机分配的数咯,不过关于系统的随机分配当然各个编译器有不同的规定,这个就不说了,当你定义一个a[]后,对a[i]的引用和对i[a]是一样的

#include<stdio.h>
main()
{
    int a[10];
    int i;
    for(i=0;i<10;i++)
        a[i]=i+1;
    printf("a[i]表示:\n");
    for(i=0;i<10;i++)
        printf("%d ",a[i]);
    printf("\ni[a]表示:\n");
    for(i=0;i<10;i++)
        printf("%d ",i[a]);
    printf("\n");
}
//由此可见,在编译中数组的表现形式是指针
----------------解决方案--------------------------------------------------------
000000000000000000
----------------解决方案--------------------------------------------------------
  相关解决方案