Bonjour,

J'ai un programme un peu trop long pour être posté. Mais dès que je passe dans une des fonctions, printf commence à déconner et n'affiche plus rien.

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
Group create_group(char name[], char* memb[], int size)
{
  Group group;
 
  printf("On est dans create_group() : \n");
  group.name = name;
  group.size = size;
 
  printf("size = %d\n",group.size);
 
  for( int i = 0 ; i < group.size ; i++ )
    {
      group.members[i] = search_client(memb[i]);
    }
 
  printf("group %s created with :\n" , group.name);
  for( int i = 0 ; i < group.size ; i++ )
    {
      printf("%s\n" , (group.members[i])->name); // PROBLEME
     // j'ai essayé fflush(stdout) ici mais rien n'y fait.
    }
 
  return group;
}
 
//juste pour info, voici à quoi ressemble ma structure Group :
typedef struct
{
  char* name;
  Client* members[25];
  int size;
}Group;
printf s'arrête de fonctionner correctement apres son dernier passage dans la boucle for seulement, et je ne comprends absolument pas pourquoi. Le programme continue de s'executer normalement par la suite pourtant... Est-ce que ça pourrait être dû au fait que le champs "name" que j'affiche pourrait contenir une chaine de caractere qui ne se termine pas par \0 ?