Odczyt argumentów c++/cli

Odczyt argumentów c++/cli
YI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 4
0

Podczas próby odczytu argumentów

Kopiuj
if(args[0])...

dostaje taki błąd: System.IndexOutOfRangeException
Rozumiem, że jest on przez to, że tablica jest pusta ale to więc w jaki sposób mam sprawdzić czy program został odpalony wraz z argumentem?

_13th_Dragon
  • Rejestracja: dni
  • Ostatnio: dni
0
Kopiuj
if(args.Length>0)
YI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 4
0
_13th_Dragon napisał(a):
Kopiuj
if(args.Length>0)

też próbowałem przed napisaniem tego posta i też był ciągle ten sam błąd

Ogólnie to gdy odpalam program z byle jakim argumentem to nie ma tego problemu ale wiadomo, że użytkownicy nie będą odpalać go przez konsolę, żeby użyć argumentu xD

Azarien
  • Rejestracja: dni
  • Ostatnio: dni
0

na pewno nie „ten sam błąd”, bo powinno być

Kopiuj
args->Length

argumenty są od args[0] do args[args->Length-1].

jeśli Length wynosi 0 to nie ma argumentów, a tablica args jest pusta.

YI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 4
0
Azarien napisał(a):

na pewno nie „ten sam błąd”, bo powinno być

Kopiuj
args->Length

argumenty są od args[0] do args[args->Length-1].

jeśli Length wynosi 0 to nie ma argumentów, a tablica args jest pusta.

W standardowym c++ to by zadziałało ale z cli nie idzie :/
user image

Patryk27
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Wrocław
  • Postów: 13042
0

Bez patrzenia na z-jakiegoś-powodu-zamazany fragment kodu jestem Ci w stanie powiedzieć, że nie otoczyłeś całego kodu nawiasami, tylko zrobiłeś coś w stylu:

Kopiuj
if (args->Length > 0)
  wyświetlWiadomość();

if (args[0]) { // zonk!
Azarien
  • Rejestracja: dni
  • Ostatnio: dni
0

podaj kod, a nie zasłaniasz.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.