Función de la biblioteca C -sigaddset()
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 errno
errnopara 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 <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 la
sigemptysetfunción para inicializar el conjunto de señales como vacío. - Se utiliza la
sigaddsetfunción para agregarSIGINTla señal al conjunto de señales. - Se utiliza la
sigismemberfunción para comprobar si el conjunto de señales contieneSIGINTla señal. - La salida muestra que
SIGINTla 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.