如何正确将数组传递给struct

时间:2018-11-19 05:56:19

标签: c string for-loop struct

已修改问题

我是C语言的新手,在这里。

数组是否可以通过结构返回其值?

尽管我试图处理List [5] = {1、2、3、4}中的每个字符,但是,它仅停留在1且仅打印575757,而不是

我的结构

struct Count numbers() {                                    
struct Count numbers;
int List[5] = {1, 2, 3, 4};
int i = 0;

for (i = 0; i < 10; i++) {         //It might be something in my for loop
    numbers.intOne= List[i] + 4;   // 1 + 4
    numbers.intTwo= List[i] + 6;   // 1 + 6     
    return numbers;
}
};

仅打印575757,我希望打印576879

void printCode(struct Count numbers) {
int i;
for (i = 0; i < 3; i++) {
    printf("%i%i", numbers.intOne, numbers.intTwo); 

}
}

主要

int main() {
int i = 0;

for (i = 0; i < 10; i++) {
    numbers();
    printCode(numbers());
    getchar();
}

}

谢谢您的帮助!

1 个答案:

答案 0 :(得分:1)

  

它只停留在'4352'

您将在处理decode数组的第一个元素output之后从4352返回。因此checkparam数组的其他元素不会被填充。

在任何情况下,checkparam都是decode函数的局部数组,并且其元素的值不能在函数外部使用。