[Risolto] [C] Errore compilazione memset()

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
Avatar utente
pincia
Prode Principiante
Messaggi: 12
Iscrizione: venerdì 17 aprile 2015, 15:55
Sesso: Maschile

[Risolto] [C] Errore compilazione memset()

Messaggio da pincia »

Salve ragazzi,

Sto cercando di compilare un semplice codice per testare la sigaction ma non ci sto riuscendo. Probabilmente sarà qualcosa di banale....sembra che sbagli a non includere un qualche header....magari potete aiutarmi.

Codice: Seleziona tutto

#include <signal.h>
#include <stdlib.h>
#include <stdio.h>
#include <sys/stat.h>
#include <unistd.h>


/* un gestore piuttosto semplice */
static void gestore(int signum) {
printf("Ricevuto segnale %d\n",signum);
		exit(EXIT_FAILURE);
	}

	/* genero una sequenza infinita di interi */
	int main(void) {
		struct sigaction s;
		int i;
		/* inizializzo s a 0*/
		memset(&s, 0, sizeof(s));
		s.sa_handler = gestore;
		/* registro gestore */
		/*installo nuovo gestore s */
		ec_meno1(sigaction(SIGINT, &s, NULL));
		for (i = 1;; i++) {
			/* ciclo infinito */
			sleep(1);
		printf("%d\n",i);
			}
			exit(EXIT_SUCCESS); 	/* mai eseguita */
		}
	
...errori in compilazione:

Codice: Seleziona tutto

prova.c: In function ‘main’:
prova.c:19:3: warning: implicit declaration of function ‘memset’ [-Wimplicit-function-declaration]
   memset(&s, 0, sizeof(s));
   ^
prova.c:19:3: warning: incompatible implicit declaration of built-in function ‘memset’
prova.c:23:3: warning: implicit declaration of function ‘ec_meno1’ [-Wimplicit-function-declaration]
   ec_meno1(sigaction(SIGINT, &s, NULL));
   ^
/tmp/cc6D8k8h.o: In function `main':
prova.c:(.text+0x80): undefined reference to `ec_meno1'
collect2: error: ld returned 1 exit status
Grazie
Ultima modifica di pincia il giovedì 14 maggio 2015, 18:10, modificato 1 volta in totale.
Avatar utente
vbextreme
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1214
Iscrizione: domenica 12 gennaio 2014, 14:06
Desktop: lxde
Distribuzione: xubuntu 14.10

Re: [C] Errore compilazione memset() ec_meno1()

Messaggio da vbextreme »

per la memset includi string.h
ma cosa sarebbe ec_meno1()??????
Easy framework per il linguaggio C.
vbextreme hack your life
Avatar utente
pincia
Prode Principiante
Messaggi: 12
Iscrizione: venerdì 17 aprile 2015, 15:55
Sesso: Maschile

[Risolto] [C] Errore compilazione memset()

Messaggio da pincia »

Ok...grazie! Risolto!
Chiedo enormemente scusa, ma negli esempi che stavo seguendo, ec_meno1() è una macro che testa il valore di ritorno della funzione. (e nel codice era omessa). -.-'
E nella poca conoscienza dell'argomento ci ho messo un po' a capirlo.

Grazie ancora
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 13 ospiti