C でのペアの使用には、特定のコード例が必要です
C 言語では、1 つのプログラムに異なる型の 2 つのオブジェクトを保存する必要があることがよくあります。これを達成するにはペアを使用できます。ペアは C 言語の構造体タイプで、タイプの異なる 2 つのオブジェクトを格納するために使用されます。この記事では、pair の基本的な使い方と具体的なコード例を紹介します。
まず、pair を使用するには、ヘッダー ファイル
以下はペア構造の定義です。
typedef struct { void *first; // 第一个对象的指针 void *second; // 第二个对象的指针 } Pair;
ペア構造には 1 番目と 2 番目の 2 つのポインター変数があり、それぞれ最初のオブジェクトと 2 番目のオブジェクトを指します。
次に、以下に示すように、pair を使用して、異なるタイプの 2 つのオブジェクトを保存できます。
Pair mypair; int a = 10; char b = 'c'; mypair.first = &a; mypair.second = &b;
上の例では、ペア構造変数 mypair を作成し、整数変数のアドレスを設定しました。 a と文字変数 b が mypair の 1 番目と 2 番目のポインタに割り当てられます。
ペアに保存されたオブジェクトにアクセスする必要がある場合、以下に示すように、ポインターを逆参照することでオブジェクトの値を取得できます。
int value1 = *(int*)(mypair.first); char value2 = *(char*)(mypair.second);
上の例では、 1番目のポインタと2番目のポインタを使用すると、整数変数aと文字変数bの値を取得できます。
ペア内のオブジェクトに手動でアクセスすることに加えて、以下に示すように、pair が提供する関数を使用してペアを操作することもできます。
Pair make_pair(void *first, void *second); void *pair_get_first(Pair pair); void *pair_get_second(Pair pair); void pair_set_first(Pair pair, void *first); void pair_set_second(Pair pair, void *second);
make_pair 関数は、ペア構造体と 2 つのオブジェクトへのポインタがパラメータとして渡され、ペア型の構造体が返されます。ペアに保存されている最初のオブジェクトと 2 番目のオブジェクトのポインタを取得するには、pair_get_first 関数と par_get_second 関数を使用します。ペアに保存されている 1 番目のオブジェクトと 2 番目のオブジェクトを変更するには、pair_set_first 関数とペア_セット_セカンド関数を使用します。
以下は具体的なコード例です:
#include <stdio.h> #include <utility.h> int main() { Pair mypair; int a = 10; char b = 'c'; mypair = make_pair(&a, &b); int value1 = *(int*)(pair_get_first(mypair)); char value2 = *(char*)(pair_get_second(mypair)); printf("Value 1: %d ", value1); printf("Value 2: %c ", value2); int c = 20; char d = 'd'; pair_set_first(mypair, &c); pair_set_second(mypair, &d); value1 = *(int*)(pair_get_first(mypair)); value2 = *(char*)(pair_get_second(mypair)); printf("Modified Value 1: %d ", value1); printf("Modified Value 2: %c ", value2); return 0; }
上記のコード例では、ペアの関連関数を使用して、ペアに保存されているオブジェクトを作成、取得、および変更します。プログラムの実行結果は次のとおりです。
Value 1: 10 Value 2: c Modified Value 1: 20 Modified Value 2: d
上記の例を通じて、C 言語でのペアの基本的な使用法を確認できます。ペアは、タイプの異なる 2 つのオブジェクトを保存する便利な方法を提供し、保存されたオブジェクトはポインター操作を通じて取得および変更できます。この記事がペアの使い方を理解する一助になれば幸いです!
以上がCでのペアの使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。