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 :

Probleme code execution


Sujet :

C

  1. #41
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Sur un compilo qui supporte cette syntaxe, l'optimiseur verra que ces variables ont des temps de vie disjoints (leur intersection est nulle), et les mettra donc au même endroit (même place dans la pile, même registre...).
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  2. #42
    Expert éminent sénior

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 603
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 603
    Points : 17 913
    Points
    17 913
    Billets dans le blog
    2
    Par défaut
    merci

    Mais je persiste à dire que pour moi c'est moins lisible, et je me conforme à C90 et avant ...
    "Un homme sage ne croit que la moitié de ce qu’il lit. Plus sage encore, il sait laquelle".

    Consultant indépendant.
    Architecture systèmes complexes. Programmation grosses applications critiques. Ergonomie.
    C, Fortran, XWindow/Motif, Java

    Je ne réponds pas aux MP techniques

  3. #43
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par souviron34
    Est-ce que ça ne me prend pas 2 int dans la fonction ???
    Euh, les variables locales ne sont pas 'dans la fonction', mais dans la mémoire automatique. Un compilateur intelligent (ils ne le sont pas tous) saura attribuer le même espace mémoire (même adresse, même registre...) aux deux variables.
    Pas de Wi-Fi à la maison : CPL

  4. #44
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par souviron34
    Mais je persiste à dire que pour moi c'est moins lisible, et je me conforme à C90 et avant ...
    Autant je n'aime pas trop la définition d'une variable au mileu du code, et je préfère dans ce cas créer un bloc, autant je trouve que la définition dans le for() est un réel progrès, question lisibilité et allégement du code (chez moi, ça ferait un bloc de moins).
    Pas de Wi-Fi à la maison : CPL

  5. #45
    Expert éminent sénior

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 603
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 603
    Points : 17 913
    Points
    17 913
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par Emmanuel Delahaye
    Autant je n'aime pas trop la définition d'une variable au mileu du code, et je préfère dans ce cas créer un bloc, autant je trouve que la définition dans le for() est un réel progrès, question lisibilité et allégement du code (chez moi, ça ferait un bloc de moins).
    Bah question d'habitude je pense....

    Pour moi c'est le contraire....
    "Un homme sage ne croit que la moitié de ce qu’il lit. Plus sage encore, il sait laquelle".

    Consultant indépendant.
    Architecture systèmes complexes. Programmation grosses applications critiques. Ergonomie.
    C, Fortran, XWindow/Motif, Java

    Je ne réponds pas aux MP techniques

  6. #46
    gl
    gl est déconnecté
    Rédacteur

    Homme Profil pro
    Inscrit en
    Juin 2002
    Messages
    2 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 165
    Points : 4 637
    Points
    4 637
    Par défaut
    Citation Envoyé par Ksempac
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    int mafonction()
    {
    //declaration des variables ayant de véritables informations
    //tout un tas de lignes de code
    ...
     
    for(int i = 0;i<max;i++)
    {
       for(int j = 0;j<max;j++)
       {
        char temp;
       }
    }
    }
    la syntaxe for(int i;... est elle un veritable progres et je l'apprecie.
    Quant au temp, ici il est en debut de bloc, il n'y a donc pas de probleme

    Citation Envoyé par Ksempac
    De plus, on doit sans cesse se referer au début des fonctions lorsqu'on recherche le nom/type d'une variable meme si elle n'est utile que dans un sous-bloc.
    Non, pas au debut de la fonction, au debut du bloc.
    Ce que je critique, ce n'est pas la declaration de variable dans les blocs, bien au contraire (declare une variable en dehors du bloc ou elle est utile n'a pas d'interet et est peu lisible). Par contre, a l'interieur d'un bloc, il est preferable, sauf cas particulier, de declarer les variables avant toute instruction (hors instruction utilise pour l'initialisation des variables bien entendu)

+ Répondre à la discussion
Cette discussion est résolue.
Page 3 sur 3 PremièrePremière 123

Discussions similaires

  1. [AC-2007] probleme d'execution de code vba
    Par adem_dev dans le forum IHM
    Réponses: 5
    Dernier message: 14/11/2009, 13h14
  2. probleme d'execution de mon code à cause d'un renvoie de variable.
    Par yorukaze dans le forum Général Python
    Réponses: 2
    Dernier message: 01/03/2008, 15h36
  3. Probleme pour executer java.exe depuis le code !
    Par Battosaiii dans le forum C#
    Réponses: 1
    Dernier message: 21/11/2007, 12h55
  4. Probleme d'execution du code java
    Par betacrack dans le forum Langage
    Réponses: 3
    Dernier message: 07/09/2006, 11h40
  5. probleme code vba ne s'execute pas apres instruction sql
    Par arnogef dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 29/12/2005, 12h34

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