Make some array initializations variable.
[TD_SE.git] / philosophe-famine / philosophe.c
index bd7ea4e5266a9716d345bfddee377f70a58020a1..eb27f43c3a1c41f2e7e6eef78b6d2a7944e53e8f 100644 (file)
@@ -4,7 +4,7 @@
 #include <pthread.h>
 #include <semaphore.h>
 
-#define N 5
+#define N 10
 // nombre de philosophes
 #define G (i + 1) % N
 // fourchette gauche du philosophe i
@@ -14,7 +14,7 @@
 #define penser 0
 #define faim 1
 #define manger 2
-static int phiState[N] = { penser };
+static int phiState[N];
 
 sem_t mutex;
 sem_t semPhil[N];
@@ -61,12 +61,15 @@ static void *philosophe(void *num)
 
 int main()
 {
-       int i, NumPhi[N] = { 0, 1, 2, 3, 4 };
+       int i, NumPhi[N];
+       for (i = 0; i < N; i++)
+               NumPhi[i] = i;
+       for (i = 0; i < N; i++)
+               phiState[i] = penser;
        pthread_t th[N];
        sem_init(&mutex, 0, 1);
-       for (i = 0; i < N; i++) {
+       for (i = 0; i < N; i++)
                sem_init(&semPhil[i], 0, 1);
-       }
        // création des N philosophes
        for (i = 0; i < N; i++)
                pthread_create(&th[i], NULL, philosophe, &NumPhi[i]);