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

Langages de programmation Discussion :

C ou C++ ? Lequel choisir ?


Sujet :

Langages de programmation

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité de passage
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2019
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Burundi

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Juin 2019
    Messages : 1
    Par défaut C ou C++? Lequel choisir ?
    j'ai bien essayé de comprendre le C puis c++,( au fait q je voulais vraiment maîtriser le langage procédural), même avec ce dont on peut se voir fort, cela réserve un témoignage que c'est un (2 in one) langage plus zigzague q j'jamais connu.

  2. #2
    Invité de passage
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2019
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2019
    Messages : 1
    Par défaut C++
    J'ai débuté la programmation avec le langage C c'était traumatisant je l'avoue, puis après avoir appris les bases et les intermédiaires du langage je suis passé au C++ que j'ai beaucoup aimé, c'était pour moi énormément plus simple que le C, j'ai du coup adopté le C++ comme mon langage principale.
    Merci bien. Au fait suis nouveau dans le forum ; )

  3. #3
    Invité de passage
    Homme Profil pro
    C
    Inscrit en
    Octobre 2019
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : C

    Informations forums :
    Inscription : Octobre 2019
    Messages : 1
    Par défaut
    Le langage c est très beau

  4. #4
    Membre averti
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Avril 2020
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2020
    Messages : 46
    Par défaut
    Tout dépend de tes besoins...

  5. #5
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Février 2004
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 2
    Par défaut Une remarque d'ordre pratique...
    Citation Envoyé par Luc Hermitte
    Non, le C n'est pas un sous-ensemble du C++ -- y a pas de VLA en C++ p.ex.
    De plus, pour faire des choses similaires, en C++ on va éviter des continuer de se ballader avec les sources d'erreurs qui viennent du C. On utilise les abstractions dédiées (ou alors on aime débugguer et on n'engage que des stagiaires surdoués ou rigoureux) => string, vectors, passage d'arguments par référence, ...

    Bref, le C++ a cessé d'être le "C with classes" il y a longtemps maintenant. Inutile de trainer ce fardeaux et de l'imposer aux débutants qui ont bien d'autres choses intéressants à apprendre lors des premières leçons que la manipulation des pointeurs.

    (désolé si je radote)
    PS: la lecture de la mini FAQ sur le site de Stroustrup est des plus interressante.
    J'en conclue qu'il existe des compilateurs C++ qui n'acceptent pas certains codes source écrits en langage C.
    Pourriez-vous citer un exemple de compilateur ?
    Avec mes remerciements, Frédéric (Telecoms engineer. ENSTB-1988.).

  6. #6
    Expert confirmé
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 296
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 296
    Par défaut
    Tous, y compris GCC, refuseront les VLA. Ceci dit dit, pour GCC (en mode C++ -> g++) il faut explicitement demander à s'en tenir au C++98 et ne rien incorporer du C99 -> option "-pedantic".

    Bjarne Stroustrup détaille mieux des petites différences entre le C et la partie du C présente en C++, comme les VLA, sur son site.
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...

  7. #7
    Membre éprouvé
    Inscrit en
    Novembre 2002
    Messages
    120
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 120
    Par défaut
    J'en conclue qu'il existe des compilateurs C++ qui n'acceptent pas certains codes source écrits en langage C
    Plein d'exemples:
    la syntaxe K&R est dépreciée, et les compilateurs qui la supporte (à tort) en font des warnings:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    main(argc, argv)
      int argc;
      char* argv[];
    {
    }
    une fonction déclarée avec () est une fonction qui peut avoir n'importe quel nombre d'arguments, alors que c'est une fonction sans argument en C++:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    /* Prototype */
    int fonction();
    
    /* Définition */
    int fonction(a1, a2)
      int a1, a2;
    {
    }
    En C++, si le prototype est dans un fichier d'en-tête et la définition dans un fichier séparé, ce code peut cacher de très mauvaises surprises à l'édition des liens...

    J'en ai pas d'autres en tête, mais la liste est longue...

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Février 2004
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 10
    Par défaut
    faut suivre l'évolution de l'informatique dans le bon sens!
    On aprend le C puis on passe doucement a une philosophie orienter objet avec le C++!
    de toute facon la connaisance de ces deux langages est bénéfique alors autant les apprendres dans le bon sens!

  9. #9
    Expert confirmé
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 296
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 296
    Par défaut
    Citation Envoyé par Warrior03
    faut suivre l'évolution de l'informatique dans le bon sens!
    <perplexe>
    Et donc on commence par l'assembleur, cobol, fortran, B, ..., avant de regarder le C... :-/
    </>
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...

  10. #10
    Invité de passage
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1
    Par défaut C ou C++? lequel choisir?
    bonjour all ; je vois que vous vous prenez la tet pour rien moi aussi je sui un debutant en prog je vais bien tot commencer d abord . j ai demandé a un pote qu estcequi pourraitme conseiller comme langage et il m a repondu tu veux faire quoi comme type de porgrammation ben je lui ai repondu programmation systeme ben il m a dis apprends le C , je lui ai demander pour quel raison le C ? et il m a repondu : selon ce que tu veux faire ya different langage donc voila apprends un langage en raport ac ce que tu veux faire moi la je vais m ht un bouquin sur le C donc voila
    j espere que sa t aider allez a++

  11. #11
    Expert confirmé
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 296
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 296
    Par défaut
    Le troll n'est pas mort je vois.

    À la recherche de patterns et autres théories formalisées que j'avais laissées de côté, je suis retombé sur ce petit article à méditer : http://www.objectmentor.com/resource...tillUsingC.pdf sur object mentor (très bon site, que je vous conseille vivement). A ruminer avec le draft sur les performances du C++ (dispo sur le site du commité de normalisation) et l'article où Stroustrup explique pourquoi le C++ doit être enseigné comme un nouveau langage.

    PS: @ newbs-prog -> pas de SMS/chat-speaking ici STP. Les fautes d'orthographe et de grammaire sont pardonnables, mais le chat-speaking est particulièrement irritant. Comme j'aime à le répéter, 357-c3 2u3 j'3cri7 3n 31i73 d'480rd ?
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...

  12. #12
    Membre éclairé

    Profil pro
    Inscrit en
    Avril 2004
    Messages
    421
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2004
    Messages : 421
    Par défaut
    bon, d'accord, chaque language doit etre en accord avec ce qu'on decide de faire.

    mais prenons un cas concret.
    pour faire un programme , type xmms (player mp3), ou tout autre programme de "fonctionnement " on va dire. vaut mieux le c ou le c++

    en fait ce que j'aimerais savoir, c'est non pas ce qu'apporte le c++ par apport au c. masi quelle en est l'utilité. je veux dire, enormement de programme sont encore ecrit en c, ce qui veux dire que que la poo n'estt pas une utilité. En fait, j'aimerais ssavoir pour quelle raison il faudait utilisé se principe, dans quelle cas???

    autre chose, toutes les librairies c, sont elle compatible avec les librairies c++?? je dit ca en autre pour la gestion de fenetre (Qt) ou sdl (je sais qu'elle est) mais touteess les librairies ne sont pas d'offices compatibles c et c++???

    merci

    a++

  13. #13
    Expert confirmé
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 296
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 296
    Par défaut
    Un programme plus simple à écrire, plus simple à maintenir et plus robuste pour aucune perte de performance significative me parait être un bon ensembe d'"utilités". Pas que cela ne soit pas possible en C, juste que cela demande plus d'efforts et donc induit plus de risques. De plus, le C n'a pas grand chose d'utile que le C++ n'a pas.

    Les bibliothèques C sont utilisables depuis tout langage quelque soit le compilateur avec lequel elle ont été compilées. C'est en ce qui me concerne un des deux derniers intérêts du C (p/r au c++). L'autre étant l'absence de compilateur C++ correct sur certaines plateformes type embarqué.
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...

  14. #14
    Membre confirmé
    Inscrit en
    Octobre 2005
    Messages
    141
    Détails du profil
    Informations personnelles :
    Âge : 33

    Informations forums :
    Inscription : Octobre 2005
    Messages : 141
    Par défaut
    Je vais passé pour un gros fermé d'esprit mais pas grave, je trouve que le C, c'est le meilleur langage que j'ai utilisé jusqu'a présent (j'ai utilisé le VB, C++ (beurk), Ruby (que des objets ) et le BASIC).

    Je te conseille le C, c'est sympa, libre (pas en droits mais en écriture) et c'est plutôt simple (pour les bases j'entends).

    Kr00pS

  15. #15
    Membre expérimenté

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Mars 2004
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2004
    Messages : 220
    Par défaut
    C++ (beurk), Ruby (que des objets )
    on dirait que tu n'en a pas contre le C++ en particulier, mais contre la POO ?

  16. #16
    Membre émérite Avatar de Caine
    Inscrit en
    Mai 2004
    Messages
    1 028
    Détails du profil
    Informations personnelles :
    Âge : 53

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 028
    Par défaut
    Je dirais, pourquoi choisir l'un ou l'autre.

    Le C, et le C++, en dehors d'être très compatibles, sont deux facettes d'une même pièce: la programmation.

    Programmation prcédural d'un côté, programmation objet de l'autre en complément.

    Faire les deux me paraît indispensable.

  17. #17
    Expert confirmé
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 540
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 540
    Par défaut
    Citation Envoyé par strategos
    Bonjour à tous
    J'aimerais apprendre la prog en C ou C++ mais je ne sais pas quel langage choisir (ils ont peu de différence parait-il). Je souheterais faire de la programmation réseau et de la prog sur Linux. Voila merci de tous vos conseils à venir @+
    il ya un débat là-dessus,on ne va pas recommencer.
    Comme il a été dit maints microcontroleurs ne peuvent que se programmer en C pur.
    C'est un langage considéré au dessus de l'assembleur ( avec les pointeurs)
    Donc à réserver plutot à programmation système ou info industrielle.
    Par contre, pour faire tout un projet par exemple de gestion compta ou bien un jeu vidé il est préférable de piger les concepts et méchanismes de POO ( je rejoins Luc Hermitte ,apprendre les rudiments de C++).
    Et puis C++ se trouve un peu en concurrence avec C# et Java maintenant c'est pour cela qu'il vaut mieux maitriser un peu la POO

    Citation Envoyé par Woufeil
    Le C est un langage qui mettra un temps fou à disparaître. Certes il n'est pas encore à son apogée, mais il ne se porte pas si mal.
    .
    La programmation Linux système c'est en C pur et dur.
    Et jusqu'à présent celle de Windows également ( base win32 ).Sauf API spécifiques qui utilisent COM et qui est objet.
    Citation Envoyé par Insidious
    apprendre tout de suite le C++ n'est pas toujours idéal pour regler par exemple les erreurs du genre "erreur de segmentation"!
    justement la STL est faite pour cela cher ami
    std::string évite les confusions et erreurs qu'on a avec char * cf exemple de Luc

  18. #18
    Membre Expert

    Homme Profil pro
    Inscrit en
    Juillet 2003
    Messages
    2 075
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations forums :
    Inscription : Juillet 2003
    Messages : 2 075
    Par défaut
    Citation Envoyé par strategos
    Bonjour à tous
    J'aimerais apprendre la prog en C ou C++ mais je ne sais pas quel langage choisir (ils ont peu de différence parait-il). Je souheterais faire de la programmation réseau et de la prog sur Linux. Voila merci de tous vos conseils à venir @+
    Commence par le C++, comme cela tu ne prendras pas de mauvaises habitudes et tu ne tenteras pas de faire du C (mauvais) en C++ (qui n'est pas fait pour ça).
    On peut très bien faire de la prog sous linux en C++. Y'a pas si lgtps que cela j'ai vu passer sur un autre site une dépêche d'un gars qui avait écrit un pilote d'imprimante en C++...
    Bon, ceci étant dit j'espère que tu as de bonnes bases en programmation car le C++ c'est pas vraiment un langage simple...

  19. #19
    Invité de passage
    Inscrit en
    Juin 2007
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 1
    Par défaut
    il faut d'abord maîtrisé le c car c'est la base de tout

  20. #20
    Rédacteur/Modérateur

    Avatar de gorgonite
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2005
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2005
    Messages : 10 322
    Par défaut
    Citation Envoyé par mouha12
    il faut d'abord maîtrisé le c car c'est la base de tout

    elle est bien bonne... il est vrai que quelques langages s'inspirent de la syntaxe c, mais ça ne veut pas dire qu'ils le font tous, ou que cela va plus loin
    Evitez les MP pour les questions techniques... il y a des forums
    Contributions sur DVP : Mes Tutos | Mon Blog

Discussions similaires

  1. VARCHAR & CHAR - comment savoir lequel choisir !?
    Par Thierry8 dans le forum Requêtes
    Réponses: 15
    Dernier message: 18/12/2005, 20h54
  2. Lequel choisir???
    Par t_om84 dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 27/10/2004, 14h02
  3. Curseur et lock : Les différence & lequel choisir
    Par BilTCD dans le forum Access
    Réponses: 2
    Dernier message: 22/10/2004, 14h03
  4. [FEDORA] Lequel choisir entre Fedora i386 et x86 pour un xeon?
    Par Oberon dans le forum RedHat / CentOS / Fedora
    Réponses: 7
    Dernier message: 13/07/2004, 14h52
  5. [Conseil] Glut vs SDL, lequel choisir
    Par Mathieu.J dans le forum GLUT
    Réponses: 15
    Dernier message: 08/06/2004, 08h47

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