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数组做吗?提前谢谢。
答案 0 :(得分:1)
请参阅上一个问题question on struct with char array
的回答memcpy
复制整数
数组元素。%d
整数。答案 1 :(得分:0)
有些问题,下面的所有代码段都来自您的代码:
在下文中,x[j]
的类型是什么。 %c
期望什么类型?
printf("%c", x[j]);
下面a[0].code
的类型是什么?它是一个数组,分配了预定义的内存。您对上述陈述的期望是什么?
a[0].code=x;
同样,a[0].code
的类型是什么? %d
格式期望什么?
printf("%d\n",a[0].code);
上述所有问题的答案都很简单,或者应该可以在任何教科书中找到。
编程无法通过反复试验。你应该找到一个好的参考书和一本好的教科书,并考虑一下你在做什么。
作为第一步,请回答我上面提到的问题,希望你能够自己解决大部分错误。