Maison  >  Article  >  développement back-end  >  Comment utiliser la paire en C

Comment utiliser la paire en C

WBOY
WBOYoriginal
2024-02-18 20:27:10382parcourir

Comment utiliser la paire en C

L'utilisation de pair en C nécessite des exemples de code spécifiques

En langage C, nous avons souvent besoin de sauvegarder deux objets de types différents dans un seul programme. Dans ce cas, nous pouvons utiliser pair pour y parvenir. Paire est un type de structure en langage C, utilisé pour stocker deux objets de types différents. Cet article présentera l'utilisation de base de pair et fournira des exemples de code spécifiques.

Tout d'abord, pour utiliser pair, nous devons inclure le fichier d'en-tête . La structure des paires et les fonctions associées sont définies dans ce fichier d'en-tête.

Voici la définition de la structure par paire :

typedef struct
{
    void *first; // 第一个对象的指针
    void *second; // 第二个对象的指针
} Pair;

Il y a deux variables de pointeur, la première et la seconde dans la structure par paire, qui pointent respectivement vers le premier objet et le deuxième objet.

Ensuite, nous pouvons utiliser pair pour enregistrer deux types d'objets différents, comme indiqué ci-dessous :

Pair mypair;
int a = 10;
char b = 'c';
mypair.first = &a;
mypair.second = &b;

Dans l'exemple ci-dessus, nous avons créé une variable de structure de paire mypair et défini respectivement la variable entière a et la variable de caractère b L'adresse est attribué aux premier et deuxième pointeurs de mypair.

Lorsque nous devons accéder à l'objet enregistré dans la paire, nous pouvons obtenir la valeur de l'objet en déréférençant le pointeur, comme indiqué ci-dessous :

int value1 = *(int*)(mypair.first);
char value2 = *(char*)(mypair.second);

Dans l'exemple ci-dessus, en déréférençant le premier pointeur et le deuxième pointeur, nous peut obtenir la variable entière La valeur de a et la variable de caractère b.

En plus d'accéder manuellement aux objets de la paire, vous pouvez également utiliser les fonctions fournies par pair pour faire fonctionner la paire, comme indiqué ci-dessous :

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);

La fonction make_pair est utilisée pour créer une structure de paire et passer les pointeurs du deux objets comme paramètres Enter, puis renvoie une structure de type Pair. La fonction pair_get_first et la fonction pair_get_second sont utilisées pour obtenir respectivement les pointeurs du premier objet et du deuxième objet enregistrés dans la paire. La fonction pair_set_first et la fonction pair_set_second permettent de modifier le premier objet et le deuxième objet enregistrés dans la paire.

Ce qui suit est un exemple de code spécifique :

#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;
}

Dans l'exemple de code ci-dessus, nous utilisons les fonctions liées à la paire pour créer, obtenir et modifier les objets enregistrés dans la paire. Le résultat de l'exécution du programme est le suivant :

Value 1: 10
Value 2: c
Modified Value 1: 20
Modified Value 2: d

Grâce à l'exemple ci-dessus, nous pouvons voir l'utilisation de base de pair en langage C. Pair fournit un moyen pratique de sauvegarder deux objets de types différents, et les objets enregistrés peuvent être obtenus et modifiés via des opérations de pointeur. J'espère que cet article vous aidera à comprendre l'utilisation de pair !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn