写的一个练习程序,Segmentation fault
											程序代码:
程序代码:/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 *求方差,公式为[(x1-y)^2+(x2-y)+……]/n,其中xi为所求方差的数字,y为平均值,n为
 *所求方差的数字的个数
 *要求是输入整形数,返回整形数
 */
#include <stdio.h>
#include <math.h>
//int function(int *calculate[],int arrayLen);
int main(void)
{
    int calculate[3]={1,2,3};
    int arrayLen=3;
   
    printf("%d\n",function(calculate[3],3));
}
int function(int calculate[],int arrayLen)
{
    int i;
    float sum,average,square,square_average;
   
    for(i=0;i<arrayLen;i++)
        sum+=calculate[i];
    average=sum/arrayLen;
    for(i=0;i<arrayLen;i++)
        square_average+=((float)calculate[i]-average)
                         *((float)calculate[i]-average);
   
    return (int)square_average/arrayLen;
}在不注释main函数前的function函数声明时,会出现问题:[zhuqx_hp@node1 test]$ gcc huawei.c -o huawei
huawei.c: In function `main':
huawei.c:16: warning: passing arg 1 of `function' makes pointer from integer without a cast
huawei.c: At top level:
huawei.c:20: error: conflicting types for 'function'
huawei.c:9: error: previous declaration of 'function' was here
huawei.c:20: error: conflicting types for 'function'
huawei.c:9: error: previous declaration of 'function' was here
huawei.c:32:2: warning: no newline at end of file
[zhuqx_hp@node1 test]$
注释掉function函数的声明之后就好了。huawei.c: In function `main':
huawei.c:16: warning: passing arg 1 of `function' makes pointer from integer without a cast
huawei.c: At top level:
huawei.c:20: error: conflicting types for 'function'
huawei.c:9: error: previous declaration of 'function' was here
huawei.c:20: error: conflicting types for 'function'
huawei.c:9: error: previous declaration of 'function' was here
huawei.c:32:2: warning: no newline at end of file
[zhuqx_hp@node1 test]$
这是怎么回事呢?请教大家给予解释。
但是编译的时候会提示段错误
[zhuqx_hp@node1 test]$ gcc huawei.c -o huawei
huawei.c:32:2: warning: no newline at end of file
[zhuqx_hp@node1 test]$ gcc huawei.c -o huawei
[zhuqx_hp@node1 test]$ ./huawei
Segmentation fault
请教各位,这是怎么回事,应该怎么解决呢?huawei.c:32:2: warning: no newline at end of file
[zhuqx_hp@node1 test]$ gcc huawei.c -o huawei
[zhuqx_hp@node1 test]$ ./huawei
Segmentation fault
谢谢各位。



											
	    

	


