|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Sep 2002
Città: Celano (AQ) Segno_Zodiacale: Leone Ascendente: Cammello Segni_Particolari: Quello
Messaggi: 9571
|
Segmentation fault, perchè?
Ragazzi allego qui un programma che ha ancora bisogno di essere terminato però fin qui dovrebbe funzionare... Si compila correttamente con cc -Wall però a tempo d'esecuzione mi dà un errore di segmentation fault. L'errore dovrebbe essere tra la riga 81 e la 100. Riguarda sicuramente le chiamate per la creazione di alcuni semafori, ma non riesco a capire come mai mi dà quell'errore. Potete farmi il favore di esaminare quelle 20 righe e dirmi dov'è l'errore? grazie
Ultima modifica di VegetaSSJ5 : 01-09-2004 alle 12:20. |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
|
unrar main.rar
bash: unrar: command not found
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12 |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Oct 2001
Messaggi: 11471
|
gdb dice che il problema sta qui:
Codice:
main.c:91 for (i=0; i<10; i++) ctl_arg.array[i]=0; Codice:
semun ctl_arg; Codice:
union semun {
int val; /* value for SETVAL */
struct semid_ds *buf; /* buffer for IPC_STAT, IPC_SET */
unsigned short *array; /* array for GETALL, SETALL */
/* Linux specific part: */
struct seminfo *__buf; /* buffer for IPC_INFO */
};
|
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: Sep 2002
Città: Celano (AQ) Segno_Zodiacale: Leone Ascendente: Cammello Segni_Particolari: Quello
Messaggi: 9571
|
Quote:
VICIUS oggi pomeriggio provo con una malloc e vediamo un po'... |
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Sep 2002
Città: Celano (AQ) Segno_Zodiacale: Leone Ascendente: Cammello Segni_Particolari: Quello
Messaggi: 9571
|
grazie! facendo la calloc (così mi risparmio il for) ho risolto!
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 20:10.



















