cs_aymen87
Messages postés109Date d'inscriptionsamedi 3 novembre 2007StatutMembreDernière intervention 4 février 2016
-
2 déc. 2010 à 11:20
cs_aymen87
Messages postés109Date d'inscriptionsamedi 3 novembre 2007StatutMembreDernière intervention 4 février 2016
-
2 déc. 2010 à 14:13
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;
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023123 2 déc. 2010 à 12:37
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/portfoliohttp://0217021.free.fr/portfolio]
Merci d'utiliser Réponse acceptée si un post répond à votre question