Función de la biblioteca C -sigaddset()

C 标准库 - <signal.h>Biblioteca estándar de C - <signal.h>

Descripción

sigaddsetLa función es una función de la biblioteca estándar de C, utilizada para agregar una señal específica a un conjunto de señales. Esta función se define en<signal.h>el archivo de encabezado.

Sintaxis

int sigaddset(sigset_t *set, int signo);

Parámetros

  • sigset_t *set: apunta a unasigset_tvariable de conjunto de señales de tipo.
  • int signo: el número de señal que se agregará al conjunto de señales.

Valor de retorno

  • Devuelve 0 en caso de éxito.
  • Devuelve -1 en caso de error y establece errnoerrnopara indicar el tipo de error.

Ejemplo

A continuación se muestra un ejemplo que utiliza lasigaddsetfunción para agregar una señal específica al conjunto de señales. El programa inicializa un conjunto de señales vacío, agregaSIGINTla señal al conjunto de señales, y comprueba si el conjunto de señales contieneSIGINTla señal.

Ejemplo

#include <stdio.h>
#include <signal.h>

int main() {
    sigset_t set;

    // Inicializa el conjunto de señales como vacío
    if (sigemptyset(&set) == -1) {
        perror("sigemptyset");
        return 1;
    }

    // Agrega SIGINT al conjunto de señales
    if (sigaddset(&set, SIGINT) == -1) {
        perror("sigaddset");
        return 1;
    }

    // Comprueba si el conjunto de señales contiene SIGINT
    if (sigismember(&set, SIGINT)) {
        printf("SIGINT is in the set\n");
    } else {
        printf("SIGINT is not in the set\n");
    }

    return 0;
}

La posible salida al ejecutar el programa de ejemplo anterior es la siguiente:

SIGINT is in the set

El programa inicializa un conjunto de señales vacío, agregaSIGINTla señal al conjunto de señales, y comprueba si el conjunto de señales contieneSIGINTla señal, el resultado muestra queSIGINTla señal está en el conjunto de señales.

Explicación

  • sigset_t set;: define una variable de conjunto de señales.
  • Se utiliza lasigemptysetfunción para inicializar el conjunto de señales como vacío.
  • Se utiliza lasigaddsetfunción para agregarSIGINTla señal al conjunto de señales.
  • Se utiliza lasigismemberfunción para comprobar si el conjunto de señales contieneSIGINTla señal.
  • La salida muestra queSIGINTla señal está en el conjunto de señales inicializado.

Notas

  • sigaddsetLa función se utiliza para agregar una señal específica al conjunto de señales.
  • Si el número de señal no es válido,sigaddsetla función devolverá -1 y establecerá errnoerrnopara indicar el tipo de error.

C 标准库 - <signal.h>Biblioteca estándar de C - <signal.h>

Otras extensiones