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

C++ Discussion :

Les différences entre C, C++ et C#


Sujet :

C++

  1. #1
    Membre régulier
    Inscrit en
    novembre 2007
    Messages
    175
    Détails du profil
    Informations forums :
    Inscription : novembre 2007
    Messages : 175
    Points : 79
    Points
    79
    Par défaut Les différences entre C, C++ et C#
    bonjour
    j'aimerais bien s'il vous plait que vous me répondiez à deux questions

    1- qu'elle est la diffirence entre c, c++, c#? et qui est le plus utilisé?
    2- en programmation, il y a plusieurs laguages utilisés: pascal, , c++, php, vb....: est ce que le principe de la résolution d'un probleme est le même, et ce qui change c'est la structure et les identificateurs relatifs à chaque langage?
    ça veut dire si je maitrise par exemple le pascal, je peux facilement maitriser c, c++, php, puisque le principe c'est le même? ou bien non?
    j'espère que vous m'avez compris; mes remerciments

  2. #2
    NairodDorian
    Invité(e)
    Par défaut
    1- qu'elle est la diffirence entre c, c++, c#? et qui est le plus utilisé?
    C code natif pas/peu d'abstraction, C++ idem avec abstraction possible grâce aux classes, C# code managé, beaucoup d'abstractions.

    2- en programmation, il y a plusieurs laguages utilisés: pascal, , c++, php, vb....: est ce que le principe de la résolution d'un probleme est le même,
    ça dépend par exemple en VB tu pourras pas faire les mêmes choses qu'en C si tu fais de la prog "bas niveau". Pas possible par exemple de faire un driver en VB.

    ça veut dire si je maitrise par exemple le pascal, je peux facilement maitiser c, c++, php, puisque le principe c'est le même?
    Non.
    Si tu fais du vb par exemple t'aura du mal avec le langage C pcq en VB y a pas les pointeurs. ça va être tout nouveau pour toi cependant avec un peu d'apprentissage tu devrais t'en sortir.

  3. #3
    Rédacteur

    Avatar de Davidbrcz
    Homme Profil pro
    Ing Supaéro - Doctorant ONERA
    Inscrit en
    juin 2006
    Messages
    2 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ing Supaéro - Doctorant ONERA

    Informations forums :
    Inscription : juin 2006
    Messages : 2 307
    Points : 4 731
    Points
    4 731
    Par défaut
    1- C: Il est souvent qualifié d'assembleur portable car suffisament proche de la machine mais en même temps non dépendant d'elle.

    C++: Langage de programmation très puissant tiré du C mais qui maintenant suit sa propre voie. Il est plus haut niveau que le C mais moins que le Java ou le C#

    C#: Langage Java-like provenant de la plateforme .Net de Microsoft.

    (tu constateras qu'ils n'ont rien en commun)

    2: Ca dépend. Ca dépend du paradigme du langage, des outils qu'il fournit, de ton expérience et de ta motivation.

    Par exemple, le passage lisp/ocaml -> C++ ou prolog -> Java ne serra pas aussi facile que Java -> C# ou C# -> C++, passages qui demandent quand même du travail, mais moins que les 2 premiers, car le paradime utilisé est le même.
    "Never use brute force in fighting an exponential." (Andrei Alexandrescu)

    Mes articles dont Conseils divers sur le C++
    Une très bonne doc sur le C++ (en) Why linux is better (fr)

  4. #4
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    décembre 2003
    Messages
    3 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : décembre 2003
    Messages : 3 549
    Points : 4 625
    Points
    4 625
    Par défaut
    Si tu maîtrises vraiment C++, la plupart des autres langages c'est de la rigolade.
    Boost ftw

  5. #5
    Membre éclairé Avatar de befalimpertinent
    Profil pro
    Inscrit en
    avril 2007
    Messages
    561
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : avril 2007
    Messages : 561
    Points : 800
    Points
    800
    Par défaut
    Citation Envoyé par secondechance Voir le message
    entre c, c++, c#? et qui est le plus utilisé?
    Mon humble avis sur la question:
    • Le C à été largement utilisé jusqu'a il y a encore peu de temps. Il est encore très présent dans les logiciels necessitant d'importants calculs pour son côté proche de la machine et donc optimisable "facilement". Mais mis à part dans ce domaine ou pour maintenance, il doit tendre à s'éffacer au profit du C++.
    • Le C++ est encore très utilisé dans beaucoup d'application desktop.
    • Le C# tend à être de plus en plus utilisé pour les logiciels récents mais essentiellement sous windows (oui je sais Mono, ... mas bon)

    Après je serais bien incapable de te donner des pourcentages précis (quelqu'un en a ?) . C'est juste une idée comme ça que je partage compte tenu de ma toute petite expérience.
    Linux > *

  6. #6
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : juin 2005
    Messages : 8 575
    Points : 11 394
    Points
    11 394
    Par défaut
    Dans la section "Débats - Les best of" du forum de Developpez, il y a des statistiques sur le marché des langages de programmation

    Sinon, je suis plus ou moins d'accord avec loufoque. C++ est certes plus complexe par bien des aspects, mais lorsqu'on les maitrise il y a tellement de choses qui semblent évidente et surtout on est bien plus conscient de ce qui se passe lorsque l'on programme dans d'autres langages. Il faut simplement le temps de s'habituer à la syntaxe et de prendre les bonnes habitudes de ce langage.

    Enfin je parle pour C, C++, C#, Java & consort. Si tu passes à OCaml, Lisp ou autres Prolog et compagnie, la donne change.

  7. #7
    Expert éminent sénior

    Profil pro
    Développeur informatique
    Inscrit en
    novembre 2006
    Messages
    6 976
    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 : 6 976
    Points : 15 712
    Points
    15 712
    Par défaut
    Attention C# n'est pas forcément si simple quoiqu'on en dise et le langage est plus complexe que n'est C++ les pointeurs mémoires directs en moins.
    Je trouve que Microsoft a un peu trop complexifé son langage.
    Et puis personne n'a précisé que la différence entre C et C++ c'est la surcouche objet évidente...
    historiquement C est antérieur à C++ c'est un "vieux" langage des années 70 développé par les laboratoires de Bell ( par Kernigan et Ritchie ) ; les systèmes n'étaient pas assez puissant pour faire de la POO....
    La théorie, c'est quand on sait tout et que rien ne fonctionne.
    La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.
    ( A Einstein)

  8. #8
    Membre expérimenté
    Homme Profil pro
    edi
    Inscrit en
    juin 2007
    Messages
    751
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : edi

    Informations forums :
    Inscription : juin 2007
    Messages : 751
    Points : 1 604
    Points
    1 604
    Par défaut
    Citation Envoyé par Mat.M Voir le message
    Et puis personne n'a précisé que la différence entre C et C++ c'est la surcouche objet évidente...
    Attention : faire ce genre d'affirmations sur ce forum a déjà coûté des vies !!

    Du moins précisons que ce n'est pas la seule différence...

    Plus sérieusement, c'est vrai qu'à l'origine, C++ était un "C with classes" (nom originel), mais ce n'est plus le cas maintenant. Il n'y a pas que la POO dans C++ (qui reste optionnelle), il y a aussi les exceptions, la généricité avec les Templates, etc. Mais surtout, il y a une grosse différence de mentalité entre C et C++, la façon de concevoir la programmation en C++ a fortement évolué depuis les débuts du C++, on ne peut plus aborder le C++ en ce disant que c'est "du C avec des trucs en plus".

  9. #9
    Rédacteur

    Avatar de Davidbrcz
    Homme Profil pro
    Ing Supaéro - Doctorant ONERA
    Inscrit en
    juin 2006
    Messages
    2 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ing Supaéro - Doctorant ONERA

    Informations forums :
    Inscription : juin 2006
    Messages : 2 307
    Points : 4 731
    Points
    4 731
    Par défaut
    Et puis personne n'a précisé que la différence entre C et C++ c'est la surcouche objet évidente...
    Erreur classique. On très bien faire du C++ sans faire de la POO.
    Ce qu'apporte le C++ c'est surtout des outils qu'il manquait au C (template, exception,..., mais aussi les objets).

    Perso pour moi, c'est surtout les templates qui offrent sa puissance au C++, les classes devenant un valet de celle ci.

    Edit: grilled par Noxen
    "Never use brute force in fighting an exponential." (Andrei Alexandrescu)

    Mes articles dont Conseils divers sur le C++
    Une très bonne doc sur le C++ (en) Why linux is better (fr)

  10. #10
    Membre régulier
    Inscrit en
    novembre 2007
    Messages
    175
    Détails du profil
    Informations forums :
    Inscription : novembre 2007
    Messages : 175
    Points : 79
    Points
    79
    Par défaut
    merci, j'ai compris;
    mais il reste une question si vous etiez à ma place vous allez commencer par quel language?
    Si j'ai bien compris, si je maîtrise C++ (et c'est le plus utilisé), les autres langages seront trés faciles, mais est ce que la maitrise de c++ demande la maitrise de c?, ou bein je peux maitiser c++ sans commencé par le c?,
    merci beaucoup pour votre aide

  11. #11
    Membre éprouvé
    Profil pro
    Inscrit en
    mai 2006
    Messages
    779
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : mai 2006
    Messages : 779
    Points : 1 162
    Points
    1 162
    Par défaut
    Citation Envoyé par secondechance Voir le message
    merci, j'ai compris;
    mais il reste une question si vous etiez à ma place vous allez commencer par quel language?
    Si j'ai bien compris, si je maîtrise C++ (et c'est le plus utilisé), les autres langages seront trés faciles, mais est ce que la maitrise de c++ demande la maitrise de c?, ou bein je peux maitiser c++ sans commencé par le c?,
    merci beaucoup pour votre aide
    Le C++ contient une version du C, l'essentiel est de bien comprendre quand tu utilises du C et quand tu utilises du C++.

    Cela s'applique aussi à la programmation système. Il faut que tu comprennes quand tu utilises l'API Unix ou l'API Windows et quand tu utilises juste le C++.

  12. #12
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : juin 2005
    Messages : 8 575
    Points : 11 394
    Points
    11 394
    Par défaut
    Pour _mieux_ maitriser C++ et plus rapidement, ne passe pas par le C.
    Car les bonnes habitudes en C peuvent devenir les mauvaises en C++. Ce sont 2 langages qui évoluent sur des tableaux différents et programmer dans l'un ou dans l'autre, lorsqu'on le fait correctement, est totalement différent.

    Et le C++ est certes ardu pour commencer, mais si tu t'en sens capable et que tu choisis les bons cours/bouquins, hé bien tu peux commencer à mon avis.

  13. #13
    Membre régulier
    Inscrit en
    novembre 2007
    Messages
    175
    Détails du profil
    Informations forums :
    Inscription : novembre 2007
    Messages : 175
    Points : 79
    Points
    79
    Par défaut
    bonsoir
    et bien, je prendrai vos conseils en considération, j'entamerai le language c++, je choisirai les cours et je pratiquerai plusieurs exo pour mieux maitiser la chose, et bien sùr grace à votre aide, notament votre aide, j'arriverai à maitriser plusieurs langage,
    merci à vous

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

Discussions similaires

  1. Réponses: 9
    Dernier message: 12/07/2011, 18h25
  2. Outils sur les différences entre deux fichiers XML
    Par Community Management dans le forum XML/XSL et SOAP
    Réponses: 19
    Dernier message: 21/07/2008, 16h21
  3. Les différences entre SUSE et CentOs
    Par mflo07 dans le forum SUSE
    Réponses: 4
    Dernier message: 09/04/2008, 11h16
  4. lister les différences entre 2 fichiers XML
    Par st20085 dans le forum Général Python
    Réponses: 1
    Dernier message: 14/12/2007, 12h48
  5. Les différences entre Qt3 et GTK pour développer en C ?
    Par piwee dans le forum Bibliothèques
    Réponses: 4
    Dernier message: 12/01/2006, 17h03

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