-4

我试图搜索这个,因为我认为它必须在这里,但我无法弄清楚。

无论如何,如果我在 C 中有一个结构数组,例如:

struct structName array[];

我想交换 array[i] 和 array[i+1] 的值我该怎么做?我在其他地方看到过 int array[] 但由于指针,它似乎不能正确应用。有什么帮助吗?

4

2 回答 2

4

就像你交换任何东西一样:

struct structName tmp = array[i];
array[i] = array[i+1];
array[i+1] = tmp;
于 2012-05-18T11:49:15.010 回答
0
1.Copy structure #1 to a temporary structure variable;
2.Copy structure #1 to structure #2;
3.Copy the temporary structure variable into structure #2.

需要注意的是,必须一次复制一个结构的每个成员。如果结构中有嵌套结构,则必须以相同的方式复制这些结构。这使得这个过程更加复杂,也更加乏味。

于 2012-05-18T11:52:36.597 回答