Passage d'un code écrit en c++ à un code en c [Résolu]

Signaler
Messages postés
109
Date d'inscription
samedi 3 novembre 2007
Statut
Membre
Dernière intervention
4 février 2016
-
Messages postés
109
Date d'inscription
samedi 3 novembre 2007
Statut
Membre
Dernière intervention
4 février 2016
-
Bonjour à tous

j'ai téléchargé un code pour cryptage qui fonctionne à merveille sous vs6 (avec l'extension .cpp).
Mais pour l'intégrer dans mon application,je doit utiliser un fichier .c car je compile en gcc.

Donc je dois effectuer des changement dans le code pour qu'il puisse être compilé sous linux.

en premier lieu j'ai changé l'extension des fichier à .c et je compile toujours sous vs6 sous Windows.

J'ai eu principalement les erreurs suivantes :
c:\chemin...\destest.h(28) : error C2061: syntax error : identifier 'bool'

ce que j'ai fait est le suivant :
//remplacer tout bool par unsigned char
typedef unsigned char bool;

//définir true/false
#ifndef false
#define false 0x00
#endif

#ifndef true
#define true 0x01
#endif

Je voudrais savoir si cela est faisable ou bien il y a un standard pour ce faire.


Merci Beaucoup

4 réponses

Messages postés
3839
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
15 avril 2021
120
Un extension n'est rien. Si ton fichier s'appelait main.toto, ça fonctionnerait quand même.
On met des extensions juste pour faire joli (et parce que c'est pratique), mais on pourrait tout à fait ne pas en mettre. Un fichier appelé "main" (tout court), compilerait.

Un code C++ se convertit rarement en C (pour ne pas dire jamais). Si la personne a codé en C dans un fichier C++, tu peux t'en sortir. Mais si celle-ci a vraiment codé en C++, ce n'est pas possible (notamment s'il y a des objets, de la surcharge, des templates, etc...).

Pour ton erreur, "syntax error : identifier 'bool'", inutile de faire du typedef. Le type bool a été intégré dans le C "version de 99".
Il te suffit d'inclure "#include <stdbool.h>", et de préciser à gcc que tu compiles en C99 avec "--std=c99"

________________________________________________________________________
Historique de mes créations, et quelques articles:
[ http://0217021.free.fr/portfolio http://0217021.free.fr/portfolio]
Merci d'utiliser Réponse acceptée si un post répond à votre question
Messages postés
1054
Date d'inscription
samedi 2 octobre 2004
Statut
Membre
Dernière intervention
9 juillet 2013
6
Salut
gcc compile aussi les codes en C++...
Tu n'as pas besoin de convertir ton code en c
A+

____________________________________________________________________________
Logiciel en traitement de l'image gratuit et open source.
Messages postés
109
Date d'inscription
samedi 3 novembre 2007
Statut
Membre
Dernière intervention
4 février 2016

Salut

Mais le reste de l'application est en c je devrais avoir la même extension dans les makefile .. Nn ??

Merci
Messages postés
109
Date d'inscription
samedi 3 novembre 2007
Statut
Membre
Dernière intervention
4 février 2016

salut

Merci pour la réponse .. le code a été écrit en c .. sauf l'utilisation du type bool .