Diskuze: Co tam je špatně?

C# .NET .NET (C# a Visual Basic) Co tam je špatně? American English version English version

Aktivity (1)
Avatar
Snoswem
Člen
Avatar
Snoswem:8.12.2013 15:11

using System;
using System.Collec­tions.Generic;
using System.Linq;
using System.Text;
using System.Threadin­g.Tasks;

namespace Aplikace
{
class Program
{
static void Main(string[] args)
{

Console.Write­Line("Jak se jmenuješ?");
string jmeno;
jmeno = Console.ReadLine();
Console.Write­Line("A jaký jsi?");
string Vlastnost;
Vlastnost = Console.ReadLine();
string Vysledek;
Vysledek = jmeno + "je" + Vlastnost;
Console.Write­Line(Vysledek);
Console.ReadKey();

}
}
}
Píše to, že používám nezařazenou proměnnou jmeno.

 
Odpovědět 8.12.2013 15:11
Avatar
Zdeněk Pavlátka
Tým ITnetwork
Avatar
Odpovídá na Snoswem
Zdeněk Pavlátka:8.12.2013 15:23

Co takhle použít ikonku Vložit zdrojový kód? A vyzkoušej tohle:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Aplikace
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Jak se jmenuješ?");
            string jmeno = "";
            jmeno = Console.ReadLine();
            Console.WriteLine("A jaký jsi?");
            string Vlastnost = "";
            Vlastnost = Console.ReadLine();
            string Vysledek;
            Vysledek = jmeno + " je " + Vlastnost;
            Console.WriteLine(Vysledek);
            Console.ReadKey();
        }
    }
}
Editováno 8.12.2013 15:23
Nahoru Odpovědět 8.12.2013 15:23
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Odpovídá na Snoswem
Libor Šimo (libcosenior):8.12.2013 15:27

Vyskúšal som to a pracuje to správne, ale keď som to od teba skopčil, všetky riadky začínajúce Console.WriteLine vykazovali chybu. Musel som ich prepísať.

Nahoru Odpovědět 8.12.2013 15:27
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Kit
Redaktor
Avatar
Odpovídá na Zdeněk Pavlátka
Kit:8.12.2013 15:28

Proč tam vytváříš tolik objektů, které na následujícím řádku zahazuješ?

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Aplikace {
    class Program {
        static void Main(string[] args) {
            Console.WriteLine("Jak se jmenuješ?");
            string jmeno = Console.ReadLine();
            Console.WriteLine("A jaký jsi?");
            string Vlastnost = Console.ReadLine();
            string Vysledek = jmeno + " je " + Vlastnost;
            Console.WriteLine(Vysledek);
            Console.ReadKey();
        }
    }
}
Nahoru Odpovědět 8.12.2013 15:28
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovídá na Zdeněk Pavlátka
Libor Šimo (libcosenior):8.12.2013 15:29

Vôbec nemusí definovať premenné string tak ako si to napísal a funguje to.

Nahoru Odpovědět  +1 8.12.2013 15:29
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Kit
Redaktor
Avatar
Odpovídá na Libor Šimo (libcosenior)
Kit:8.12.2013 15:31

Asi jsi zapomněl na

using System;
Nahoru Odpovědět 8.12.2013 15:31
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Snoswem
Člen
Avatar
Snoswem:8.12.2013 15:31

Díky moc!
Já tam měl špatně toto:
string jmeno;
jmeno = Console.ReadLine();
A má to být dohromady..
Díky :)

 
Nahoru Odpovědět 8.12.2013 15:31
Avatar
Snoswem
Člen
Avatar
Odpovídá na Libor Šimo (libcosenior)
Snoswem:8.12.2013 15:33

Mně to právě nejde... :/

 
Nahoru Odpovědět 8.12.2013 15:33
Avatar
Kit
Redaktor
Avatar
Odpovídá na Libor Šimo (libcosenior)
Kit:8.12.2013 15:33

Však tu definici stringů tam má zbytečně. Už jsem mu to také vytkl.

Nahoru Odpovědět 8.12.2013 15:33
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Redaktor
Avatar
Odpovídá na Snoswem
Kit:8.12.2013 15:37

Je jedno, jestli tam máš

string jmeno;
jmeno = Console.ReadLine();

nebo

string jmeno = Console.ReadLine();

Výsledek je stejný. Dávám však přednost druhé formě zápisu, pokud je to možné.

Nahoru Odpovědět 8.12.2013 15:37
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Snoswem
Člen
Avatar
Odpovídá na Kit
Snoswem:8.12.2013 15:38

Tak proč mi to před tím nešlo? Divné..

 
Nahoru Odpovědět 8.12.2013 15:38
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na Snoswem
Jan Vargovský:8.12.2013 15:43

Protože string je defaultně null.

 
Nahoru Odpovědět 8.12.2013 15:43
Avatar
Odpovídá na Snoswem
Libor Šimo (libcosenior):8.12.2013 15:43

Ten kód si písal sám, alebo si ho odniekiaľ skopíroval?
Niekedy skopíruješ niečo a sú tam neviditeľné znaky, ktoré kompilátor vyhodnotí ako špatný kód.

Editováno 8.12.2013 15:45
Nahoru Odpovědět 8.12.2013 15:43
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Kit
Redaktor
Avatar
Odpovídá na Snoswem
Kit:8.12.2013 15:44

V tom programu se ti vyskytují podivné neviditelné znaky. Například ve slově WriteLine mezi "eL" jsou vloženy dva neviditelné bajty "c2 ad" hexa.

Nahoru Odpovědět 8.12.2013 15:44
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Redaktor
Avatar
Odpovídá na Kit
Kit:8.12.2013 15:57
U+00AD          c2 ad   SOFT HYPHEN
Nahoru Odpovědět 8.12.2013 15:57
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovídá na Kit
Libor Šimo (libcosenior):8.12.2013 16:00

Keď som jeho kód vložil so PSPad-u vyzerá takto:
a je tam plno chýb.

Editováno 8.12.2013 16:01
Nahoru Odpovědět  +1 8.12.2013 16:00
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Snoswem
Člen
Avatar
Odpovídá na Libor Šimo (libcosenior)
Snoswem:8.12.2013 16:12

Psal jsem to sám:Ve visual studio 2013
Tak nevím no.. neviditelné znaky neumím :D

 
Nahoru Odpovědět 8.12.2013 16:12
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na Libor Šimo (libcosenior)
Jan Vargovský:8.12.2013 16:15

Kopírování přímo z webu tam přidává neviditelné znaky.

 
Nahoru Odpovědět  +2 8.12.2013 16:15
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 18 zpráv z 18.