私は2つのリンクされたリストを持っています:-
struct Struct_A_s {
int a;
struct Struct_A_s *next;
}Struct_A;
struct Struct_B_s {
int a;
int b;
int c;
int d;
struct Struct_B_s *next;
}Struct_B;
Struct_A で動作するいくつかの関数が既にあります。のようなもの:
「Add_tail (Struct_A *)」、「Remove_tail (Struct_B *)」、「Add_node (Struct_A *,int pos)」、「Add_head」などがあります。
私の要件は、既存の関数を変更して、Struct_A と Struct_B の両方で動作できるようにすることです。
C では、void ポインター (または類似のもの) を渡し、Struct_A と Struct_B の両方で動作する汎用コードを記述する方法はありますか。ここでは、コード サイズが大きな問題になります。現在のところ、Struct_B のすべてのコード (リンクされたリスト操作) を最初から書き直すしかありません。