Aktywne Wpisy
BanderaFella +5
To mój pierwszy post na tym forum. Jestem Ukraińcem mieszkającym we Wrocławiu. Lubię to miasto, ponieważ tu jest wielu Ukraińców, czuję się jak w domu.
Nie do końca rozumiem was Polaków. Popełniacie przestępstwo rozsypując zboże na drodze. Nie macie empatii ani współczucia. Nasi ludzie umierają za was, a wy knujecie przeciwko nam i chcecie nas zniszczyć. My staramy się przetrwać i wygrać walkę z okupantem. Wy nam nie pomagacie, tylko wbijacie nóż
Nie do końca rozumiem was Polaków. Popełniacie przestępstwo rozsypując zboże na drodze. Nie macie empatii ani współczucia. Nasi ludzie umierają za was, a wy knujecie przeciwko nam i chcecie nas zniszczyć. My staramy się przetrwać i wygrać walkę z okupantem. Wy nam nie pomagacie, tylko wbijacie nóż
urarthone +70
News dnia to...
- Zginął rekordzista w maratonie 15.5% (94)
- Piłkarza trafił piorun 15.4% (93)
- Rozegrano finał futbolu amerykańskiego 1.2% (7)
- Pierwsza ofiara ospy alaskańskiej 3.3% (20)
- Koniec malowania twarzy w telewizyjnym show 24.5% (148)
- Rolnicy wysypali ukraińskie zboże 6.4% (39)
- Malcolm będzie jeździł a NASCAR 4.8% (29)
- Będą pierwsze powietrzne taksówki 11.2% (68)
- Kary za fotografowanie zabytków 5.1% (31)
- Wypadki w pracy, dane GUS 12.6% (76)
Dlaczego używając poniższego zapisu nie przypisze nowej wartości?
Int32.TryParse(Console.ReadLine(), out int temp);
Chodzi mi o drugi parametr TryParse. Bez int działa. Wytłumaczy ktoś łopatologicznie?
#naukaprogramowania #csharp
Int32.TryParse(Console.ReadLine(), out temp);
@grap32: sory, nie doczytałem Twojego pytania LOL :) W sumie nie wiem :) Albo zawsze używam ze zmienną, albo inline. Ty zrobiłeś zupełnie bez sensu... i mówisz, że temp jest nieprzypisany? Ogólnie musze to sprawdzić bo aż mi się wierzyć nie chce.
Jeśli piszesz w c# < 7 to Twoja wersja nie zadziała bo out musi być już zainicjowany przed jego podaniem:
int temp;
Int.TryParse(Console.ReadLine(), out temp)
to już Ci powinno zadziałać.
Dopiero od C# 7 wprowadzili takie cuda w TryParse, gdzie w sumie nawet nie musisz nic deklarować a nawet nie musisz nawet jawnie podawać typu
A odpowiedzią jest to, że
out int temp
lub 'out var temp` to deklaracje nowej zmiennej.Jeżeli jest wyżej zadeklarowana to nie możesz jej zadeklarować ponownie.
@grap32: Musisz mieć jakąś literówkę. U mnie działa ( ͡º ͜ʖ͡º) aż musiałem sprawdzić. Wklej cały kod.
żadnych błędów nie dostaję
@WhiskyRomeo:
https://dotnetfiddle.net/ouVGoV
przy wybraniu kompilatora .Net 4.7.2 już czepia się tego int przy drugim parametrze TryParse
Int.TryParse(Console.ReadLine(), out int temp)
tutaj deklarujesz drugi raz tą zmienną i ją nadpisujesz. bezint
nie deklaruje zmiennej i wstawia do tej juz istniejacejhttps://dotnetfiddle.net/eEodB7
public int temp_2;
public Program()
{
Int32.TryParse(Console.ReadLine(), out int temp);
}
public void show()
{
Console.Write(temp_2);
}
Drukowałeś nie tą wartość, którą wydawało Ci się, że drukujesz :)