Partage
  • Partager sur Facebook
  • Partager sur Twitter

Conversion C++/C

7 février 2013 à 16:51:07

Bonsoir, serait il possible de convertir un programme en C++ en C?
  • Partager sur Facebook
  • Partager sur Twitter
7 février 2013 à 17:06:20

Bonjour,

Qu'appelles-tu convertir ?

Il va être assez difficile de transformer un programme C++ en C car il n'y a pas ni objet, ni références en C et il faudra donc tout transformer pour le convertir en C. 

  • Partager sur Facebook
  • Partager sur Twitter
8 février 2013 à 23:51:21

Bonsoir , 

Ce n'est pas facile de le faire pour les mêmes raisons citées par ampholite , le C++ dispose de fonctionnalités assez avancées pour qu'elles puissent être interprétées en C .

  • Partager sur Facebook
  • Partager sur Twitter
8 février 2013 à 23:54:20

Salut,

Tout a fait d'accord avec Issamok et ampholyte.

Cela dit... tu peux "imiter" une petite partie de C++ en C.

Ca depend juste de ce que tu veux faire.

-
Edité par SeiZa 8 février 2013 à 23:54:37

  • Partager sur Facebook
  • Partager sur Twitter
9 février 2013 à 0:38:00

Bonjour,

Après, selon les cas, une interface C peut être disponible pour une bibliothèque C++. Je pense à directX par exemple, principalement faite pour être utilisée en C++, est aussi accessible en C en faisant quelque modif.

Donc cela dépend par ce que tu appelles "convertir un programme C++ en C"

  • Partager sur Facebook
  • Partager sur Twitter
** La doc, c'est comme le PQ: ça sert à se démerder tout seul **
9 février 2013 à 15:29:14

La conversion automatique C++ vers C me paraît au contraire relativement aisée (je dis bien relativement).
Les premiers compilateurs C++ compilaient vers du code C, qui était lui même compilé en code machine (par exemple, voir http://www.softwarepreservation.org/projects/c_plus_plus/cfront).

Quelques éléments de réponse plus précis :
http://stackoverflow.com/questions/1833484/c-frontend-only-compiler-convert-c-to-c

(par contre, lorsqu'ils proposent d'utiliser llvm, je ne m'attends pas à une très grande lisibilité du code C généré... car c'est du C généré à partir de bytecode fourni par llvm après compilation depuis un fichier C++ ).

Mais je conseille plutôt de le faire à la main ; ce sera plus lisible !

-
Edité par programLyrique 9 février 2013 à 17:21:15

  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
9 février 2013 à 16:58:12

Satyanand a écrit:

Bonsoir, serait il possible de convertir un programme en C++ en C?


Ça ne veut rien dire.
  • Partager sur Facebook
  • Partager sur Twitter
16 septembre 2020 à 15:56:38

#include <bits/stdc++.h>
  #define N 64
   
  using namespace std;
  inline int MIN(int a,int b){return (a>b)?b:a;}
  string s;
  int tab[N][N];
   
  void Compute(int from,int to)
  {
  if(from==to)
  {
  cout<<s[to];
  return;
  }
  Compute(to,to);
  Compute(from,to-1);
  }
   
  int main()
  {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  getline(cin,s);
  Compute(0,s.length()-1);
  return 0;
  }
  • Partager sur Facebook
  • Partager sur Twitter
Staff 16 septembre 2020 à 16:27:01

Bonjour,

Déterrage

Citation des règles générales du forum :

Avant de poster un message, vérifiez la date du sujet dans lequel vous comptiez intervenir.

Si le dernier message sur le sujet date de plus de deux mois, mieux vaut ne pas répondre.
En effet, le déterrage d'un sujet nuit au bon fonctionnement du forum, et l'informatique pouvant grandement changer en quelques mois il n'est donc que rarement pertinent de déterrer un vieux sujet.

Au lieu de déterrer un sujet il est préférable :

  • soit de contacter directement le membre voulu par messagerie privée en cliquant sur son pseudonyme pour accéder à sa page profil, puis sur le lien "Ecrire un message"
  • soit de créer un nouveau sujet décrivant votre propre contexte
  • ne pas répondre à un déterrage et le signaler à la modération

Je ferme ce sujet. En cas de désaccord, me contacter par MP.

  • Partager sur Facebook
  • Partager sur Twitter

Pas d'aide concernant le code par MP ni par mail, le forum est là pour ça :) Postez votre code html et css (bouton '</>') !!