我对int数组有相同的结构问题

时间:2009-12-16 03:53:16

标签: c arrays data-structures struct

paxdiablo给出了以前使用char数组的答案..我可以知道如何使用int数组来获得相同的代码吗?

这样的:

struct encode {
    int code[MAX]; //instead char code[MAX]
} a[10];

int main() {
    int i, j;
    int x[] = {3,0,2,5,9,3,1};
    //instead char x[] = {'3','0','2','5','9','3','1','\0'};
    for(i = 0; i < 1; i++) {
        for(j = 0; j < 7; j++) {
            printf("%d", x[j]);
        }
        printf("\n");

        a[0].code=x;
        //strcpy(a[0].code, x); for char

    }
    printf("%d\n",a[0].code);
    //printf("%s\n",a[0].code); for char
    return 0;
}

像show这样可以为int数组做吗?提前谢谢。

2 个答案:

答案 0 :(得分:1)

请参阅上一个问题question on struct with char array

的回答
  • 使用memcpy复制整数 数组元素。
  • 如果您要打印,请使用%d 整数。

答案 1 :(得分:0)

有些问题,下面的所有代码段都来自您的代码:

  1. 在下文中,x[j]的类型是什么。 %c期望什么类型?

    printf("%c", x[j]);

  2. 下面a[0].code的类型是什么?它是一个数组,分配了预定义的内存。您对上述陈述的期望是什么?

    a[0].code=x;
  3. 同样,a[0].code的类型是什么? %d格式期望什么?

    printf("%d\n",a[0].code);
  4. 上述所有问题的答案都很简单,或者应该可以在任何教科书中找到。

    编程无法通过反复试验。你应该找到一个好的参考书和一本好的教科书,并考虑一下你在做什么。

    作为第一步,请回答我上面提到的问题,希望你能够自己解决大部分错误。