我在C中的函数不是打印值

我在C中的函数不是打印值,c,C,我写了这段代码,应该是打印矩阵第一个元素的值,但它不起作用,下面是代码 #include <stdio.h> void sumer(int matrix[2]) { matrix[0] += 1; printf("%d", matrix[0]); } int main() { int a[2]; sumer(a[2]); } #包括 void sumer(整数矩阵[2]) { 矩阵[0]+=1; printf(“%d”,矩阵[0]); } int

我写了这段代码,应该是打印矩阵第一个元素的值,但它不起作用,下面是代码

 #include <stdio.h>
void sumer(int matrix[2])
{
    matrix[0] += 1;
    printf("%d", matrix[0]);
}
int main()
{
    int a[2];
    sumer(a[2]);

}
#包括
void sumer(整数矩阵[2])
{
矩阵[0]+=1;
printf(“%d”,矩阵[0]);
}
int main()
{
int a[2];
苏美尔(a[2]);
}
#包括
void-sumer(int矩阵[2]){
矩阵[0]+=1;
printf(“%d”,矩阵[0]);
}
int main(){
int a[2]={0,0};
苏美尔(a);
返回0;
}

您应该像这样重写代码。

a
未初始化。
sumer(a[2])必须是
sumer(a),但您还需要先初始化
a
首先。您能描述“不工作”的外观吗?要求我们猜测您遇到的问题可能不太受欢迎。
您应该像这样重写代码。
他真的不应该用如此糟糕的格式重写……是的。这是真的,我很抱歉,因为我用手机写了这个代码(更喜欢
inta[]={0,0};
?是的。我同意你的看法。这是类似的方式。
#include <stdio.h> 

void sumer(int matrix[2]) { 
    matrix[0] += 1;
    printf("%d", matrix[0]); 
}
 int main() { 
    int a[2] = {0,0}; 
    sumer(a); 

    return 0;
}