Bonjour,

J'ai une variable qui change de valeur sans que je sache pourquoi.
Voilà ma méthode
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
 
void fonction_provisoire(const char* video_name, short unsigned int proj){
 
  const char* name;
 
   string name_prov = (video_name);
  if (name_prov.substr(name_prov.size()-4, 4) == ".avi")
    name = name_prov.substr(0, name_prov.size()-4).c_str();
  else
    name = name_prov.c_str();
 
   string p;
 
  switch(proj){
  case 1 :
 
    cout<<name<<endl;
    p = "xy";
     cout<<name<<endl;
    break;
  case 2 :
    p = "xt";
    break;
  case 3 :
    p = "yt";
    break;
  default:
    exit(1);
  }
 
  return;
}
Je l'appelle comme suit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
fonction_provisoire("seq.avi", 1);
Et elle m'affiche :
seq
xy

Je ne comprends pas pourquoi "name" est modifié au moment ou j'affecte "xy" à p. Si quelqu'un peut m'expliquer ça serait génial !
Merci d'avance