Besoin d'aide en c#

Natacha -  
 Natacha -
Bonjour,
J'ai commencé ce matin l'appentissage du c#.
J'ai fait un petit programme comme énoncé dans mon tuto et il ne marche pas pourriez-vous m'expliquer pourquoi, svp?

mon code :
using System;

class chaine
  {
    public static void Main()
      {
	string chaine1 = "salut";
	Console.WriteLine(chaine1);
	string chaine1 = "42";
	Console.WriteLine("{0} est stocké dans une variable de type string", chaine1);
	int chaine = Convert.ToInt32("42");
	Console.WriteLine("{0} est stockée dans une variable de type \"INT\"", chaine);
	Console.Read();

    return;
      }
  }


et voilà l'erreur qu'il me renvoit :

chaine.cs(9,16): error CS0128: A local variable named 'chaine1' is already defined in this scope
chaine.cs(7,16): (Location of the symbol related to previous error)
Compilation failed: 1 error(s), 0 warnings

C'est quoi un scope?

merci

2 réponses

chuka Messages postés 965 Date d'inscription   Statut Membre Dernière intervention   378
 
string chaine1 = "salut";
Console.WriteLine(chaine1);
string chaine1 = "42";
Renomme le deuxième chaine1 en chaine2...sinon erreur lors de la compil car 2 variables ont le même nom dans la même portée de code..
ou sinon
string chaine1 = "salut";
Console.WriteLine(chaine1);
chaine1 = "42"; //pour affecter une nouvelle valeur à ta variable!!
@+
0
Natacha
 
ok mais moi ce que je veux c'est que chaine1 change de valeur.
Je ne veux pas créer une nouvelle variable.
et je ne veux plus que chaine1 n'affiche jamais autre chose que 42.
0
chuka Messages postés 965 Date d'inscription   Statut Membre Dernière intervention   378
 
class chaine
  {
public static void Main()
        {
            string chaine1 = "salut";
            Console.WriteLine(chaine1);
            chaine1 = "42";
            Console.WriteLine("{0} est stocké dans une variable de type {1}", chaine1,chaine1.GetType().Name);
            int chaine = Convert.ToInt32(chaine1);
            Console.WriteLine("{0} est stockée dans une variable de type {1}", chaine,chaine.GetType().Name);
            Console.Read();

            return;
        }
}
0
Natacha
 
Merci,
0