Programma C per creare e includere file di intestazione personalizzati

Programma C per creare e includere file di intestazione personalizzati
Link rapidi

  • Cos'è il file di intestazione C?
  • Come si crea un file di intestazione C?
  • Programma
  • Uscita

Scrivi un programma C per creare e includere il tuo file di intestazione personalizzato. Come creare e includere il proprio file di intestazione nella programmazione C. Programma C per includere un altro programma C e file di intestazione personalizzati.

In questo articolo spiegherò come creare e includere file di intestazione personalizzati in un programma C.

Conoscenze richieste

Programmazione C di base, direttive del preprocessore C

Cos'è il file di intestazione C?

Il file di intestazione C è un normale file C che termina con .h estensione. Contiene dichiarazioni di funzioni e macro.

Esistono due tipi di file di intestazione, uno che creiamo in base ai nostri requisiti e l'altro fornito con il compilatore C. Dal nostro primo programma C Hello World al programma di oggi, abbiamo utilizzato molti file di intestazione incorporati.

Per utilizzare qualsiasi file di intestazione lo includiamo nel nostro programma C usando #include direttiva. L'inclusione di un file di intestazione è simile alla copia del contenuto del file di intestazione nel nostro programma.

Come creare e collegare un file di intestazione?

Un file di intestazione C deve contenere solo dichiarazioni di funzione e macro. In questo esempio creeremo un file di intestazione personalizzato per le operazioni aritmetiche. Dichiareremo le funzioni per eseguire tutte le operazioni aritmetiche di base nel file di intestazione. Successivamente definisci quelle funzioni in un file C separato. Infine, includili e usali nel nostro file C principale. Quindi, iniziamo.

Logica descrittiva passo passo per creare un file di intestazione personalizzato nella programmazione C.

  1. Crea un nuovo file e chiamalo arith.h questo è il nostro file di intestazione.
  2. Dichiara tutte le tue funzioni e macro in arith.h file di intestazione. Ad esempio:
    float sum (float, float);
    float sub (float, float);
    float div (float, float);
    float mult (float, float);
    int mod (int, int);
  3. Assicurati di non dichiarare accidentalmente le funzioni sopra ancora e ancora. Per fare ciò, avvolgiamo tutte le dichiarazioni di cui sopra all'interno di una guardia di inclusione.
    // If arith.h is not included to any file
    // Include guard
    #ifndef ARITH_H
    
    // Declare macro as a flag that specifies arith.h is included
    #define ARITH_H
    
    // Declare all functions
    float sum (float, float);
    float sub (float, float);
    float div (float, float);
    float mult (float, float);
    int mod (int, int);
    
    #endif
  4. Ok, abbiamo finito con la parte delle dichiarazioni. Successivamente, dobbiamo definire queste funzioni. Per definire queste funzioni creiamo un nuovo file C con nome arith.c
  5. Definisci tutte le funzioni dichiarate nel file di intestazione.
    /**
     * arith.h header file function definitions.
     * Define all functions here, that are declared in arith.h.
     */
    
    float sum (float x, float y)
    {
        return (x + y);
    }
    
    float sub (float x, float y)
    {
        return (x - y);
    }
    
    float div (float x, float y)
    {
        return (x == 0 || y == 0) 
                ? 0
                : (x / y);
    }
    
    float mult (float x, float y)
    {
        return (x * y);
    }
    
    int mod (int x, int y)
    {
        return (x % y);
    }
  6. Yippie, il nostro file di intestazione è pronto. Possiamo usare questo file di intestazione nel nostro programma C. Per includere e iniziare a utilizzare queste funzioni in qualsiasi altro file C, includi semplicemente questo file di intestazione utilizzando #include "arith.h"

    Nota: Ho presupposto che sia il file principale che il file di intestazione esistano nella stessa directory. In caso contrario, modificare il #include percorso.

  7. Esegui gcc main.c arith.c per compilare il file principale e di intestazione.

    Nota: main.c è il punto in cui abbiamo incluso il nostro file di intestazione

Programma per creare, includere e utilizzare file di intestazione personalizzati

File:arith.h

// If arith.h is not included to any file
#ifndef ARITH_H

// Declare macro as a flag that specifies arith.h is included
#define ARITH_H

// Declare all functions
float sum (float, float);
float sub (float, float);
float div (float, float);
float mult (float, float);
int mod (int, int);

#endif

File:arith.c

/**
 * arith.h header file function definitions.
 * Define all functions here, that are declared in arith.h.
 */

float sum (float x, float y)
{
    return (x + y);
}

float sub (float x, float y)
{
    return (x - y);
}

float div (float x, float y)
{
    return (x == 0 || y == 0) 
            ? 0
            : (x / y);
}

float mult (float x, float y)
{
    return (x * y);
}

int mod (int x, int y)
{
    return (x % y);
}

File:main.c

/**
 * C program to create and include custom header file
 */

#include <stdio.h>
#include "arith.h"   // Include our custom header file

int main()
{
    printf("sum(10, 20)  = %.2f\n", sum(10, 20));
    printf("sub(10, 20)  = %.2f\n", sub(10, 20));
    printf("mult(10, 20) = %.2f\n", mult(10, 20));
    printf("div(10, 20)  = %.2f\n", div(10, 20));
    printf("mod(10, 20)  = %d\n",   mod(10, 20));

    return 0;
}

Per compilare il programma sopra, esegui gcc main.c arith.c

Uscita

sum(10, 20)  = 30.00
sub(10, 20)  = -10.00
mult(10, 20) = 200.00
div(10, 20)  = 0.50
mod(10, 20)  = 10

Buona codifica 😉