Affectation variable globale - C++ - Programmation
MarshPosté le 13-10-2002 à 21:58:25
Bonsoir, j'ai une variable globale char * NOMFIC que j'aimerai bien modifiée dans mon programme pour que l'utilisateur saisisse à la main le nom du fichier. Je sais, les variables globales c'est pas bien... mais est-ce qu'il existe une solution sachant que si j'essaye de l'affecter j'obtiens un segmentation fault.
J'ai essayé avec NOMFIC = (char*) malloc (256*sizeof(char)); --> marche pas strcpy ( NOMFIC, tampon); --> marche pas NOMFIC = "monfic" --> marche... mais pas pratique puisque c'est déjà défini NOMFIC = tampon --> marche pas, tampon étant un char*
Est-ce que c'est parce que on ne peut pas affecter les variables de cette zone, ou alors est-ce qu'il y a un moyen...
$gdb a.out GNU gdb 5.1.1 Copyright 2002 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. (gdb) run Starting program: a.out
Program exited normally. (gdb)
Message édité par Taz@PPC le 13-10-2002 à 22:09:27
Marsh Posté le 13-10-2002 à 21:58:25
Bonsoir,
j'ai une variable globale char * NOMFIC que j'aimerai bien modifiée dans mon programme pour que l'utilisateur saisisse à la main le nom du fichier. Je sais, les variables globales c'est pas bien... mais est-ce qu'il existe une solution sachant que si j'essaye de l'affecter j'obtiens un segmentation fault.
J'ai essayé avec
NOMFIC = (char*) malloc (256*sizeof(char)); --> marche pas
strcpy ( NOMFIC, tampon); --> marche pas
NOMFIC = "monfic" --> marche... mais pas pratique puisque c'est déjà défini
NOMFIC = tampon --> marche pas, tampon étant un char*
Est-ce que c'est parce que on ne peut pas affecter les variables de cette zone, ou alors est-ce qu'il y a un moyen...
Merci d'avance