整数数组无缘无故为空

问题描述 投票:0回答:1

所以我有这个代码,它应该生成一个随机的 4 位数代码。它正确打印出每个生成的数字,但是当我尝试打印整个数组时,它是空的。或者至少它不会打印出任何东西......

#include <stdio.h>
#include <stdlib.h>

#define CODE_LENGTH 4

void generate_code(int code[])
{
    int i;
    for(i = 0; i < CODE_LENGTH; i++) {
        int x = rand() % 10;
        printf("\n%i", x);
        code[i] = x;
    }
    printf("\nCode: %n", code);
}

int main(void)
{
    int code[4];

    generate_code(code);
    
    return 0;
}

输出:

1
7
4
0
Code: 
arrays c integer
1个回答
0
投票

您无法使用单个语句打印数组的内容。 你必须循环它。

printf("\nCode: ");
for(i = 0; i < CODE_LENGTH; i++) {
    printf("%i ", code[i]);
}
printf("\n");
© www.soinside.com 2019 - 2024. All rights reserved.