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

 C Discussion :

Débuter en C, précaution norme


Sujet :

C

  1. #1
    Membre habitué
    Homme Profil pro
    root
    Inscrit en
    Janvier 2013
    Messages
    174
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : root

    Informations forums :
    Inscription : Janvier 2013
    Messages : 174
    Points : 144
    Points
    144
    Par défaut Débuter en C, précaution norme
    Salut à tous.
    J'aimerais débuter en C (sans x raison).

    J'ai un peu de base sur C++.
    Et de là, j'ai pu constater qu'il y a pas mal de chose nouveau sortie en C++, ce qui résulte par apprendre de nouveau chose et changer ses habitudes.

    Du coup je me demandes, si sous C avec le c9x et c11, sa sera pareil ?!
    Y a t il trop de chose à apprendre et changer ses habitudes ?
    Vaut-il mieux apprendre à l'ancienne et changer ses habitudes au fur et à mesure ou prendre directement les bonnes habitudes avec les nouveautés ?

    Suis un peu coincé (c'est embarrassant de devoir ré-apprendre les mêmes sujet d'une autre façon et de savoir tout ça au début).


    Merci d'avance pour vos avis.

  2. #2
    Expert éminent sénior
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : Mai 2010
    Messages : 3 214
    Points : 10 140
    Points
    10 140
    Par défaut
    Je ne crois pas que le c11 a changer les habitudes des programmeurs C , je crois que pas mal reste en C ANSI soit C 89 , me souvient qu'un prof nous forçait a coder en C89 c'est pas gênant mais les commentaires sur une seule ligne sont apparu en C99 , ce qui nous été interdit par ce prof x).
    Pour ma part en C les habitudes ne change pas , j'ai pas regardé vraiment les nouvelles fonctionnalité mais je pense pas qu'elle apporte vraiment grand chose.
    Par contre je que j'ai pu constater c'est que le C demande quelque années tout de même pour être bien maitrisé donc a toi de voir si tu veux passer du temps(beaucoup même) sur ce langage , qui demande pas mal rigueur.

    Pour ma part je code en C 99.

  3. #3
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juin 2009
    Messages
    4 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 481
    Points : 13 679
    Points
    13 679
    Billets dans le blog
    1
    Par défaut
    Je code aussi en C99, essentiellement car j'aime pouvoir déclarer mes variables ou je le souhaite, y compris à l'intérieur de l'instruction for(). C'est le gros truc qui change en C89=C ANSI et C99. C11 est encore trop récent pour être vraiment adopté. Mon conseil : C99 en étant conscient des différences avec C89.

  4. #4
    Membre habitué
    Homme Profil pro
    root
    Inscrit en
    Janvier 2013
    Messages
    174
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : root

    Informations forums :
    Inscription : Janvier 2013
    Messages : 174
    Points : 144
    Points
    144
    Par défaut
    Merci pour vos réponses.
    D'après une recherche, il y a pas énormément de changement en C qui change les habitudes jusqu'à la c11, contrairement en c++ avec c++11.

    Donc je me jettes dans l'eau, merci encore.


    J’espère trouver des bons tuto en français.
    J'ai ces sources pour le moment:
    http://emmanuel-delahaye.developpez....ques-codage-c/
    http://emmanuel-delahaye.developpez....pragmatique-c/

    Je sais pas s'il y a un tuto complet ou du moins sur les bases de C ici sur le site.

  5. #5
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juin 2009
    Messages
    4 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 481
    Points : 13 679
    Points
    13 679
    Billets dans le blog
    1
    Par défaut
    http://c.developpez.com/cours/
    http://c.developpez.com/livres/

    Emmanuel Delahaye est un peu une légende de l'ancien temps, sur le forum C de Developpez.com. Je pense que tu peux lire ses tuto les yeux fermés.

    Bon courage à toi

  6. #6
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 858
    Points : 218 575
    Points
    218 575
    Billets dans le blog
    120
    Par défaut
    Bonjour,

    Nos cours sur le C sont ici : http://c.developpez.com/cours/
    Cherchez ce qui vous intéresse dedans
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  7. #7
    Modérateur
    Avatar de gangsoleil
    Homme Profil pro
    Manager / Cyber Sécurité
    Inscrit en
    Mai 2004
    Messages
    10 149
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Manager / Cyber Sécurité

    Informations forums :
    Inscription : Mai 2004
    Messages : 10 149
    Points : 28 116
    Points
    28 116
    Par défaut
    Citation Envoyé par kripteks Voir le message
    Du coup je me demandes, si sous C avec le c9x et c11, sa sera pareil ?!
    Y a t il trop de chose à apprendre et changer ses habitudes ?
    Vaut-il mieux apprendre à l'ancienne et changer ses habitudes au fur et à mesure ou prendre directement les bonnes habitudes avec les nouveautés ?
    Ca va dependre des domaines d'application :
    • Si tu bosses sur un projet genre "open source et a la mode", il y a des chances pour que la norme utilisee soit des plus recentes, et donc que tu aies effectivement besoin de connaitre certaines specificites du C11.
    • Si c'est en embarque, tu auras (probablement) des contraintes propres a l'embarqué, et donc du C89 réduit.
    • Enfin, dans ce que j'ai vu de l'industrie, la plupart des codes sont en C89 avec une toute petite part de C99 (genre snprintf), principalement pour des raisons de portabilite (lorsque tu compiles le meme programme pour plusieurs OS, tu te mets au niveau le plus restreint, qui est C89 -- en sachant que la plupart des compilateurs "recents" acceptent snprintf.


    Bases-toi sur le C89, tu auras bien le temps de jouer avec les tableaux de longueur variables (c99) si tu en as besoin.
    "La route est longue, mais le chemin est libre" -- https://framasoft.org/
    Les règles du forum

  8. #8
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juin 2009
    Messages
    4 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 481
    Points : 13 679
    Points
    13 679
    Billets dans le blog
    1
    Par défaut
    Si c'est en embarque, tu auras (probablement) des contraintes propres a l'embarqué, et donc du C89 réduit.
    Je modérerai ce propos en disant que ça dépend vraiment des compilateurs. Je travaille sur des Cortex-M avec 3 compilateurs (IAR, Keil, gcc) et tous sont capables d'utiliser la norme C99. Pour des cibles plus "confidentiels", il est en effet possible de trouver des compilateurs plus "limités".

  9. #9
    Modérateur
    Avatar de gangsoleil
    Homme Profil pro
    Manager / Cyber Sécurité
    Inscrit en
    Mai 2004
    Messages
    10 149
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Manager / Cyber Sécurité

    Informations forums :
    Inscription : Mai 2004
    Messages : 10 149
    Points : 28 116
    Points
    28 116
    Par défaut
    Citation Envoyé par Bktero Voir le message
    Je modérerai ce propos en disant que ça dépend vraiment des compilateurs. Je travaille sur des Cortex-M avec 3 compilateurs (IAR, Keil, gcc) et tous sont capables d'utiliser la norme C99. Pour des cibles plus "confidentiels", il est en effet possible de trouver des compilateurs plus "limités".
    J'ai failli moderer moi-meme mes propos, mais j'ai eu la flemme .

    Et il est vrai qu'on trouve de plus en plus de materiel avec des compilateurs qui supportent toute la norme C89 et la partie utilisee de la norme C99 (car comme le montre ce tableau recapitulatif sur wikipedia, nombre de compilateurs n'implementent pas la norme C99 en entier).
    "La route est longue, mais le chemin est libre" -- https://framasoft.org/
    Les règles du forum

  10. #10
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 684
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 684
    Points : 30 973
    Points
    30 973
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Citation Envoyé par Bktero Voir le message
    Je pense que tu peux lire ses tuto les yeux fermés.
    Mouais. Pas facile facile tout de même...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  11. #11
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juin 2009
    Messages
    4 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 481
    Points : 13 679
    Points
    13 679
    Billets dans le blog
    1
    Par défaut
    des compilateurs qui supportent toute la norme C89 et la partie utilisee de la norme C99
    Ca ce n'est pas faux : une partie de la norme seulement.


    @Sve@r : Tu sors !

Discussions similaires

  1. Quel logiciel (EDI) pour débuter en programmation ?
    Par mimosa69 dans le forum Débats sur le développement - Le Best Of
    Réponses: 13
    Dernier message: 17/01/2016, 16h45
  2. Réponses: 2
    Dernier message: 10/06/2015, 14h12
  3. Débat : quelle distribution Linux choisir pour débuter ?
    Par Anonymous dans le forum Distributions
    Réponses: 227
    Dernier message: 18/02/2015, 10h09
  4. Normes EDI
    Par f-demu01 dans le forum Langages de programmation
    Réponses: 2
    Dernier message: 14/03/2003, 08h22
  5. Comment débuter en programmation ?
    Par Marc Lussac dans le forum Débuter
    Réponses: 0
    Dernier message: 08/04/2002, 11h29

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