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 :

Qt et langage C


Sujet :

Qt

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2011
    Messages : 75
    Points : 76
    Points
    76
    Par défaut Qt et langage C
    Bonjour,
    j'ai un petit problème concernant un programme sur lequel je bosse actuellement. Il y a un code extrêmement complexe réalisé en langage C qui compile nickel me donne l'exécutable donc parfait (donc pas touche !) , mais je souhaiterais ajouter une interface graphique. J'ai déjà travaillé sur Qt et c'est quand même un must pour les interfaces graphiques mais à l'époque tout était en C++...Comme je pressens que Qt est exclusivement C++, je voulais savoir si cela était possible de lier l'interface graphique que j'obtiens en C++ avec Qt à un .exe ? Ou bien si il existe une astuce que vous connaitriez je serais sauvé ! Sinon avec quel outil pourrais-je réaliser une interface graphique pour un programme en langage C ?

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    865
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 865
    Points : 1 069
    Points
    1 069
    Par défaut
    Comme je pressens que Qt est exclusivement C++, je voulais savoir si cela était possible de lier l'interface graphique que j'obtiens en C++ avec Qt à un .exe ?
    La question n'a pas vraiment de sens.
    Ou tu lances l'exécutable depuis ton interface graphique Qt et là peu importe que ton exécutable soit en C, en Fortran ou je ne sais quoi. Il te suffit d'utiliser QProcess (http://qt.developpez.com/doc/4.7/qprocess/) pour lancer l'exécutable.
    Ou tu veux faire une interface qui appelle des fonctions de ton exécutable, ce qui ne semble pas être le cas puisque tu ne veux pas toucher à ton exécutable, mais comme il est développé en C, tu pourrais facilement le faire en ajoutant des gardes dans tes headers C.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    #ifdef __cplusplus
    extern "C" {
    mes fonctions C que je veux appeler en C++
    }
    #endif
    Ou bien si il existe une astuce que vous connaitriez je serais sauvé !
    Déterminer les fonctions C à appeler depuis l'interface. En faire une librairie. La lier à ton exécutable. A la lecture du main, tu peux trouver ces dites-fonctions et la librairie contiendra probablement le gros du code, l'exécutable ne contenant que le main et étant linké à la librairie. Ça ne change rien à ton exécutable et tu peux utiliser de manière un peu plus fine ton code C au sein de ton interface Qt.

    Sinon avec quel outil pourrais-je réaliser une interface graphique pour un programme en langage C
    Tu peux regarder la page suivante http://cpp.developpez.com/telecharge.../453/Graphique. C'est probablement GTK qui t'intéresserait mais bon si tu connais Qt...

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2011
    Messages : 75
    Points : 76
    Points
    76
    Par défaut
    Merci beaucoup je pense que QProcess est exactement ce qu'il me faut mais je ne savais pas si cela existait (je suis pas hyper expérimenté non plus en Qt). En fait mon IHM servira a écrire des fichiers textes qui seront lus en lancant le exe c'est pour cela que les 2 programmes peuvent être séparé, donc nikel! J'avais peur que lancer un exe ne soit pas possible depuis l'IHM donc merci beaucoup tu me sauves la vie ^^.

  4. #4
    Membre expérimenté

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2009
    Messages
    1 009
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2009
    Messages : 1 009
    Points : 1 738
    Points
    1 738
    Par défaut
    Même le plus basique langage de script peut lancer un exécutable, Qt ne sert pas qu'à faire des IHM loin de là, c'est un (quasi-)framework C++ qui sait presque tout faire

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [langage] Je cherche un bon livre ?
    Par Anonymous dans le forum Langage
    Réponses: 13
    Dernier message: 09/04/2003, 13h16
  2. [langage] Comparer Perl avec d'autres langages comme C ?
    Par Anonymous dans le forum Langage
    Réponses: 3
    Dernier message: 10/08/2002, 23h52
  3. [langage] comment créer des fichiers ?
    Par Anonymous dans le forum Langage
    Réponses: 3
    Dernier message: 05/05/2002, 16h33
  4. Comparer des fichiers de données : Quel Langage ?
    Par Anonymous dans le forum Langages de programmation
    Réponses: 6
    Dernier message: 24/04/2002, 22h37
  5. Cours, tutoriels, logiciels, F.A.Q,... pour le langage SQL
    Par Marc Lussac dans le forum Langage SQL
    Réponses: 0
    Dernier message: 04/04/2002, 10h21

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