标题:在Linux环境下编的C 帮忙看看哪里错了
取消只看楼主
williamweng
Rank: 1
等 级:新手上路
帖 子:34
专家分:2
注 册:2010-10-7
结帖率:83.33%
已结贴  问题点数:10 回复次数:4 
在Linux环境下编的C 帮忙看看哪里错了
程序代码:
#include<stdio.h>

#define SIZE (10)

void fill (int array[SIZE]){
    int i;
    for(i=0;i<sizeof(array);i++)
        array[i]=i;
}

int main(){
    int array[SIZE];
    fill(array);

    int i;
    printf("===dump array===\n");
    printf("%d\n",SIZE);
    for(i=0;i<SIZE;i++){
        printf("%d",array[i]);
    }
    printf("\n===end===\n");
    return 0;
}

在SIZE那里之前定义为4的时候还没问题,但把数弄大点就有问题了,为什么啊?
搜索更多相关主题的帖子: Linux 
2012-11-13 18:13
williamweng
Rank: 1
等 级:新手上路
帖 子:34
专家分:2
注 册:2010-10-7
得分:0 
回复 2楼 zklhp
?什么意思?能详细点吗?
2012-11-13 18:24
williamweng
Rank: 1
等 级:新手上路
帖 子:34
专家分:2
注 册:2010-10-7
得分:0 
回复 2楼 zklhp
但是我在开头就定义了SIZE,照你说的void fill(int array[],int n)的话,我不是要在fill()函数里面给SIZE赋值了?
2012-11-13 18:29
williamweng
Rank: 1
等 级:新手上路
帖 子:34
专家分:2
注 册:2010-10-7
得分:0 
回复 7楼 zklhp
还是一样的出问题啊
2012-11-13 18:39
williamweng
Rank: 1
等 级:新手上路
帖 子:34
专家分:2
注 册:2010-10-7
得分:0 
回复 9楼 zklhp
还是不行的。。。。其实把sizeof(array)改成SIZE就好了。 这格式是老师教得好啊。
2012-11-13 21:36



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




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

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