c语言中结构中的数组
这是我的密码。main应该只有调用函数。testcases调用通过程序运行的测试用例c语言中结构中的数组,c,structure,C,Structure,这是我的密码。main应该只有调用函数。testcases调用通过程序运行的测试用例 #include<stdio.h> #include"conio.h" int main() { testcases(); } struct test { int a[10]; } testDB[5] = { {1,2,3,4,5,6}, {7,8,9,0,1,2,3,4} }; void testcases() { int i; for(i=0;i
#include<stdio.h>
#include"conio.h"
int main()
{
testcases();
}
struct test {
int a[10];
} testDB[5] = {
{1,2,3,4,5,6},
{7,8,9,0,1,2,3,4}
};
void testcases()
{
int i;
for(i=0;i<2;i++)
displaytest(testDB[i].a);
}
displaytest(char *a)
{
int i=0;
while(a[i]!='\0')
{
printf("%d\n",a[i]);
i++;
}
}
我想显示两个数组。但我只得到了第一个索引。
有人能帮忙吗?您传递的参数不合适
displaytest(char *a) --> void displaytest(int *a)
编辑:如第一条评论所述,您的while循环无法工作。您不能像这样检查whilea[i]!='\0' 必须将数组的大小作为第二个参数传递
void displaytest(int *a, int size)
{
int i = 0;
while (i < size/sizeof(int))
{
printf("%d\n", a[i]);
i++;
}
}
displaytestchar*a->void displaytestint*a并放置原型。顺便说一句{7,8,9,0,1,2,3,4}:在0停。
displaytest(testDB[i].a, sizeof(testDB[i].a));