Bonsoir,

J'utilise la fonction str_sub prise dans le tuto de ce site. Cette fonction permet d'extraire une sous-chaîne de s comprise entre l'indice start et end.

voici mon code:

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
#include <stdio.h>
#include <stdlib.h>
 
char *str_sub (const char *, unsigned int, unsigned int);
 
 
int main()
{
char * ch1= "bonjour monsieur" ;
 
printf(str_sub (ch1,3,6)); 
 
return 0;
 
}
 
char *str_sub (const char *s, unsigned int start, unsigned int end)
{
   char *new_s = NULL;
 
   if (s != NULL && start < end)
   {
/* (1)*/
      new_s = malloc (sizeof (*new_s) * (end - start + 2));
      if (new_s != NULL)
      {
         int i;
 
/* (2) */
         for (i = start; i <= end; i++)
         {
/* (3) */
            new_s[i-start] = s[i];
         }
      }
      else
      {
         fprintf (stderr, "Memoire insuffisante\n");
         exit (EXIT_FAILURE);
      }
   }
   return new_s;
}
Ca devrait m'afficher "jour"

or ca m'affiche "jour=&o.."


Quelqu'un pour m'aider ???

User