IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Qt Discussion :

warning a la compil et plantage à l'exécution


Sujet :

Qt

  1. #1
    Expert éminent sénior Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Points : 12 264
    Points
    12 264
    Par défaut warning a la compil et plantage à l'exécution
    Bonjour,

    je débute avec QT mais je reprend un programme ecrit il y a deux ans ....

    dans un des fichiers cpp j'ai une fonction telle que :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    char *keycode[256] = 	// liste des codes
    {
    	"", "<esc>", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0",
    	"-", "=", "<backspace>",
    	"<tab>", "q", "w", "e", "r", "t", "y", "u", "i", "o", "p", "[",
    	"]", "\n", "<control>", "a", "s", "d", "f", "g",
    	"h", "j", "k", "l", ";", "'", "", "<shift>",
    	"\\", "z", "x", "c", "v", "b", "n", "m", ",", ".",
    	"/", "<shift>", "", "<alt>", " ", "<capslock>", "<f1>",
    	"<f2>", "<f3>", "<f4>", "<f5>", "<f6>", "<f7>", "<f8>", "<f9>",
    	"<f10>", "<numlock>", "<scrolllock>", "", "", "", "", "", "", "",
    	"", "", "", "\\", "<f11>", "<f12>", "", "", "", "", "", "",
    	"", "", "<control>", "", "<sysrq>"
    };
    j'ai toute une pile de warning (un pour chaque char visiblement qui dit ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    attention : deprecated conversion from string constant to «char
    vu que le binaire crée au final plante avec une "erreur de segmentation" sans autres indications, ce pourrait t il que ce soit la cause ??

    et si oui comment doit on gerer une pareille table de keycode ?

    Merci


    PS: semble etre utilisé dans cette boucle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    do
    	{
    		read(_device, &eventKey, sizeof(struct input_event));
    		nb = eventKey.code;
    		if (eventKey.value == 1 && eventKey.type == EV_KEY)
    			if (keycode[nb] != NULL && keycode[nb] != "\n")
    				_idCard.append(keycode[nb]);
    	}
    	while (keycode[nb] != "\n");

  2. #2
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 860
    Points : 219 062
    Points
    219 062
    Billets dans le blog
    120
    Par défaut
    Pour enlever les warnings je pense qu'il faut rajouter const:
    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
     
    const char *keycode[256] = 	// liste des codes
    {
    	"", "<esc>", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0",
    	"-", "=", "<backspace>",
    	"<tab>", "q", "w", "e", "r", "t", "y", "u", "i", "o", "p", "[",
    	"]", "\n", "<control>", "a", "s", "d", "f", "g",
    	"h", "j", "k", "l", ";", "'", "", "<shift>",
    	"\\", "z", "x", "c", "v", "b", "n", "m", ",", ".",
    	"/", "<shift>", "", "<alt>", " ", "<capslock>", "<f1>",
    	"<f2>", "<f3>", "<f4>", "<f5>", "<f6>", "<f7>", "<f8>", "<f9>",
    	"<f10>", "<numlock>", "<scrolllock>", "", "", "", "", "", "", "",
    	"", "", "", "\\", "<f11>", "<f12>", "", "", "", "", "", "",
    	"", "", "<control>", "", "<sysrq>"
    };
    Sinon, je ne pensais pas que cela pouvait faire une erreur de segmentation.

    Finalement, en regardant le code d'en dessous, si on met const la ligne suivante marchera plus:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    while (keycode[nb] != "\n");
    Peut être qui faut essayer comme ceci:
    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
     
    const char keycode[256][20] = 	// liste des codes
    {
    	"", "<esc>", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0",
    	"-", "=", "<backspace>",
    	"<tab>", "q", "w", "e", "r", "t", "y", "u", "i", "o", "p", "[",
    	"]", "\n", "<control>", "a", "s", "d", "f", "g",
    	"h", "j", "k", "l", ";", "'", "", "<shift>",
    	"\\", "z", "x", "c", "v", "b", "n", "m", ",", ".",
    	"/", "<shift>", "", "<alt>", " ", "<capslock>", "<f1>",
    	"<f2>", "<f3>", "<f4>", "<f5>", "<f6>", "<f7>", "<f8>", "<f9>",
    	"<f10>", "<numlock>", "<scrolllock>", "", "", "", "", "", "", "",
    	"", "", "", "\\", "<f11>", "<f12>", "", "", "", "", "", "",
    	"", "", "<control>", "", "<sysrq>"
    };
    Mais c'est pas une solution parfaite
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

Discussions similaires

  1. Réponses: 18
    Dernier message: 02/03/2012, 15h52
  2. Warning durant la compilation
    Par mommsse dans le forum Débuter
    Réponses: 2
    Dernier message: 24/11/2007, 00h52
  3. [Delphi7] Plantage à l'exécution
    Par Tcheby dans le forum EDI
    Réponses: 7
    Dernier message: 01/08/2007, 14h51
  4. Les varags, warning a la compilation.
    Par red210 dans le forum C
    Réponses: 3
    Dernier message: 20/12/2005, 19h03
  5. [C#] Générer un warning utilisateur à la compilation
    Par Pete dans le forum Windows Forms
    Réponses: 2
    Dernier message: 17/12/2004, 18h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo