Bonjour,
j'ai besoin d'utiliser "libc.h" sans un programme et j'utilise Code::Blocks comme éditeur sous Windows 7, par contre il me met :"\TP-Carrefour\main.c|13|error: libc.h: No such file or directory"
Si vous pouvez me guider Merci
Bonjour,
j'ai besoin d'utiliser "libc.h" sans un programme et j'utilise Code::Blocks comme éditeur sous Windows 7, par contre il me met :"\TP-Carrefour\main.c|13|error: libc.h: No such file or directory"
Si vous pouvez me guider Merci
Bonjour,
Je ne connais pas le fichier libc.h, de quelle bibliothèque viendrait t-il ?
Sinon, ne parleriez vous pas de l'inclusion de la bibliothèque C dans un projet. Parce que celle-là, elle est incluse de base.
J'ai enlever le libc.h et le programme me mais une erreur dans sleep(3) j'ai chercher ici
j'ai ajouté la bibliothèque unistd.h mais j'ai toujours une erreur a coté de sleep(3).
Merci
Voici le Code Source :
Et voici l'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181 #include <stdio.h> #include <stdlib.h> #include <pthread.h> #include <unistd.h> //#include <libc.h> #define TAILLE 4; void* changerCouleurFeu(void* data); void lireFeu(); /*Variable partage*/ /* capteur : 0 : pas de voiture detecté 1 : voiture detecté */ volatile int capteur[4] = {0,0,0,0}; volatile int voiture[4]; /* Feux : 0 : feu rouge 1 : feu orange 2 : feu vert */ volatile int feux[4]= {0,2,0,2}; void voitureNotifie( int voix ){ capteur[ voix - 1 ] = 1; } void* demarrerVoiture(void* vide){ sleep(3); int i = 0; int random=0; for( i = 0 ; i < 4 ; i++ ){ random = rand()%4; printf("La voiture %d arrive au feu %d.\n", random, voiture[random]); voitureNotifie(voiture[random]); sleep(rand()%4); } return NULL; } void eteindreFeu(int position1, int position2){ int feu1 = feux[position1]; int feu2 = feux[position2]; //Les feux sont verts, il faut les éteindre. if( feu1 == 2 || feu2 == 2 ){ printf("Le feu %d et %d passent au orange.\n" , position1, position2); feu1 = 1; feu2 = 1; feux[position1] = feu1; feux[position2] = feu2; } //Les feux sont au orange, il faut les mettrent au rouge : if( feu1 == 1 || feu2 == 1 ){ feu1 = 0; feu2 = 0; feux[position1] = 0; feux[position2] = 0; } } void initCapteurs(){ int i = 0; for( i = 0 ; i < 4 ; i++ ){ capteur[i]=0; } } void lireCapteurs(){ int i = 0; for( i = 0 ; i < 4 ; i++ ){ printf("Capteur du feu %d état : %d \n", i, capteur[i]); } } void* changerCouleurFeu(void* donnee){ int i = 0; int taille = 4/2; printf("\nthread demarré avec succes."); while(1){ for(i = 0 ; i < taille ; i++ ){ if( capteur[i] || capteur[i+2] ){ //Éteindre les autres feux : eteindreFeu(i, i+2); switch (feux[i]){ case 0: printf("Le feu passe au vert\n"); feux[i] = 0; case 2: //le feu reste au vert printf("Le feu reste au vert.\n"); break; default: printf("Erreur..."); break; } } } lireFeu(); lireCapteurs(); /*printf("Voulez-vous continuer ? "); if(getchar() == 'q'){ break; }else{ printf("\n"); }*/ initCapteurs(); sleep(2); } return NULL; } void lireFeu(){ int i = 0; int taille = 4; for(i = 0 ; i < taille; i++ ){ switch (feux[i]){ case 0: printf("Le feu %d est au rouge.\n", i+1); break; case 1: printf("Le feu %d est au orange.\n", i+1); break; case 2: printf("Le feu %d est au vert.\n", i+1); break; default: printf("Erreur..."); break; } } } int main (int argc, const char * argv[]) { printf("Debut du programme...\n"); pthread_t thread_feu;// On crée un thread pthread_create(&thread_feu, NULL, changerCouleurFeu, NULL); printf("demarrage ok\n"); //Creation des voitures sur leur voix : int voix = 0; int cpt = 0; for( cpt = 0 ; cpt < 4 ; cpt++ ){ voiture[cpt] = rand()%4; pthread_t thread; pthread_create(&thread_feu, NULL, demarrerVoiture, NULL); } //Attendre la fin de thread des feux : pthread_join(thread_feu, NULL); printf("Fin du programme.\n"); return 0; }
Merci.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 C:\Users\omar\Desktop\TP a Rendre\Systeme\TP-SE-Omar-Belghiti-Alaoui-L3-Info\TP-Carrefour\main.c||In function 'demarrerVoiture':| C:\Users\omar\Desktop\TP a Rendre\Systeme\TP-SE-Omar-Belghiti-Alaoui-L3-Info\TP-Carrefour\main.c|44|warning: implicit declaration of function 'sleep'| C:\Users\omar\Desktop\TP a Rendre\Systeme\TP-SE-Omar-Belghiti-Alaoui-L3-Info\TP-Carrefour\main.c||In function 'main':| C:\Users\omar\Desktop\TP a Rendre\Systeme\TP-SE-Omar-Belghiti-Alaoui-L3-Info\TP-Carrefour\main.c|177|warning: unused variable 'thread'| C:\Users\omar\Desktop\TP a Rendre\Systeme\TP-SE-Omar-Belghiti-Alaoui-L3-Info\TP-Carrefour\main.c|172|warning: unused variable 'voix'| obj\Debug\main.o||In function `demarrerVoiture':| C:\Users\omar\Desktop\TP a Rendre\Systeme\TP-SE-Omar-Belghiti-Alaoui-L3-Info\TP-Carrefour\main.c|44|undefined reference to `sleep'| C:\Users\omar\Desktop\TP a Rendre\Systeme\TP-SE-Omar-Belghiti-Alaoui-L3-Info\TP-Carrefour\main.c|52|undefined reference to `sleep'| obj\Debug\main.o||In function `changerCouleurFeu':| C:\Users\omar\Desktop\TP a Rendre\Systeme\TP-SE-Omar-Belghiti-Alaoui-L3-Info\TP-Carrefour\main.c|135|undefined reference to `sleep'| obj\Debug\main.o||In function `main':| C:\Users\omar\Desktop\TP a Rendre\Systeme\TP-SE-Omar-Belghiti-Alaoui-L3-Info\TP-Carrefour\main.c|167|undefined reference to `_imp__pthread_create'| C:\Users\omar\Desktop\TP a Rendre\Systeme\TP-SE-Omar-Belghiti-Alaoui-L3-Info\TP-Carrefour\main.c|178|undefined reference to `_imp__pthread_create'| C:\Users\omar\Desktop\TP a Rendre\Systeme\TP-SE-Omar-Belghiti-Alaoui-L3-Info\TP-Carrefour\main.c|184|undefined reference to `_imp__pthread_join'| ||=== Build finished: 6 errors, 3 warnings ===|
Pour le sleep(), je ne sais pas trop ...
Pour l'histoire de pthread, il faut rajouter pthread dans les propriétés de l'édition de liens.
c'est bon j'ai résolu le problème, il fallait juste l'exécuter sur linux
Merci
Dernière modification par LittleWhite ; 09/01/2012 à 23h54. Motif: Correction orthographique
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager