我在将数组复制到数组时遇到问题。打印file1 [i]有效。 file1 [1]由一系列MAC地址组成。
当打印temp1,temp2和save_MAC时,没有显示任何内容。谁知道为什么?
char file1[MAX_MAC_ADD][BIG_NUM];
char save_MAC[MAX_MAC_ADD][BIG_NUM];
int unique_MAC = 0;
for (int i = 0; i < num_MAC; ++i)
{
printf("file1[%d]='%s'\n", i, file1[i]);
}
printf("\n\n");
printf("-------------\n");
char temp1[16];
char temp2[16];
for(int i= 0; i <17; i++)
{
temp1[i] = file1[1][i];
}
for(int i = 0; i < unique_MAC+1; i++)
{
for(int j = 0; j <17; j++)
{
temp2[j] = save_MAC[i][j];
}
}
//if not the same
if(strcmp(temp1, temp2) != 0)
{
//copy address into save_MAC
strcpy(save_MAC[unique_MAC], temp1);
unique_MAC++;
}
for (int i = 0; i <1; ++i) //try to print save_MAC[0] first
{
printf("save_MAC[%d]='%s'\n", i, save_MAC[i]);
}
printf("\n\n");
printf("temp1:%s\n", temp1);
printf("temp2:%s\n", temp2);