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

Windows Forms Discussion :

Traitement des Exceptions en C#


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Développeur Web
    Inscrit en
    Novembre 2008
    Messages
    146
    Détails du profil
    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2008
    Messages : 146
    Par défaut Traitement des Exceptions en C#
    Bonjours tout le monde
    Je suis un debutant en C# j’essay de triter des algorithme simple pour bien intitier a ce langage bon je veux afficher la valeur absolu d’un
    entier ou un reél pour quoi si je traite une exception sur le type de la valeur x le compilateur m’indique 1 erreur utilisation d’une variable locale non assignée et si j’enlève le traitement de ‘exception tout va bien ! y a aucune erreur !
    Et Merci
    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
    16
    17
    18
    19
    20
    21
    22
    23
    namespace algorithme_simple
    {
        class Program
        {
            static void Main(string[] args)
            {
                double x;
                System.Console.Write("Entrez un nombre      ");
                try
                {
                    x = Double.Parse(System.Console.ReadLine());
                }
                catch (FormatException) { System.Console.WriteLine("errer ce n’est pas un chiffre "); }
     
                    if (x < 0)/*x : utilisation d’une variable locale non assignée*/
                        System.Console.WriteLine("|" + x + "|= " + (-x));
                    else
                        System.Console.WriteLine("|"+x+"|=" + (x));
     
     
            }
        }
    }

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2003
    Messages
    311
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 311
    Par défaut
    Tu es débutant en français aussi?

  3. #3
    Membre confirmé
    Développeur Web
    Inscrit en
    Novembre 2008
    Messages
    146
    Détails du profil
    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2008
    Messages : 146
    Par défaut
    Citation Envoyé par zoubidaman Voir le message
    Tu es débutant en français aussi?
    oui je sais que je suis débutant en français ,j'essaie d'apprendre (je suis pas un français) en plus vous n'êtes pas obligé ... en tout cas merci

  4. #4
    Membre Expert Avatar de Guulh
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    2 160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2007
    Messages : 2 160
    Par défaut
    Citation Envoyé par Echap Voir le message
    le compilateur m’indique 1 erreur utilisation d’une variable locale non assignée
    Le compilo te dit ça parce que tu n'as pas donné de valeur à x lors sa définition, et si le code de ton bloc try lève une exception, aucune valeur ne lui sera affectée.

    Tu peux résoudre ton souci en écrivant double x = 0.

  5. #5
    Membre confirmé
    Développeur Web
    Inscrit en
    Novembre 2008
    Messages
    146
    Détails du profil
    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2008
    Messages : 146
    Par défaut
    Citation Envoyé par Guulh Voir le message
    Le compilo te dit ça parce que tu n'as pas donné de valeur à x lors sa définition, et si le code de ton bloc try lève une exception, aucune valeur ne lui sera affectée.

    Tu peux résoudre ton souci en écrivant double x = 0.
    Merci bien Guulh pour votre réponse "sa fonctionne"
    j'ai un petit souci normalement lors de la définition les doubles et les entiers prennent une valeur zéro ! alors pour quoi je l'affecte a zéro une autre fois
    et merci

  6. #6
    Membre averti
    Inscrit en
    Janvier 2010
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 31
    Par défaut
    En fait avant de servir d'une variable il faut la déclarer, à 0 en général, c'est tout

    comme la dit dit Guulh fait ceci et normalement plus de soucis

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    namespace algorithme_simple
    {
        class Program
        {
            static void Main(string[] args)
            {
                double x = 0;
                System.Console.Write("Entrez un nombre      ");
                try

  7. #7
    Membre Expert Avatar de Guulh
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    2 160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2007
    Messages : 2 160
    Par défaut
    Citation Envoyé par Echap Voir le message
    j'ai un petit souci normalement lors de la définition les doubles et les entiers prennent une valeur zéro !
    Non. C'est vrai pour les membres d'une classe, mais pas pour les variables définies dans un bloc de code.
    Donc ces deux déclarations sont strictement identiques :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    class A {int i; }
    class A { int i = 0; }
    Par contre ces deux ci sont différentes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    class A
    {
      public void F()
      {
        int i;
        ...
      }
     
      public void G()
      {
        int i = 0;
        ...
      }
    }

  8. #8
    Membre confirmé
    Développeur Web
    Inscrit en
    Novembre 2008
    Messages
    146
    Détails du profil
    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2008
    Messages : 146
    Par défaut
    Merci bien c'est une réponse claire et nette maintenant je comprend la cause

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

Discussions similaires

  1. [Lazarus] Traitement des exceptions
    Par sverdo dans le forum Lazarus
    Réponses: 1
    Dernier message: 31/08/2007, 07h30
  2. Traitement des exceptions
    Par lecra dans le forum Zend Framework
    Réponses: 6
    Dernier message: 28/05/2007, 15h08
  3. traitement des exceptions
    Par jadey dans le forum SQL
    Réponses: 1
    Dernier message: 02/05/2007, 14h58
  4. Réponses: 5
    Dernier message: 08/01/2007, 14h58
  5. [Exceptions] Système de traitement des exceptions
    Par jenesuispasunrobot dans le forum Langage
    Réponses: 5
    Dernier message: 07/12/2005, 11h09

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