Buchempfehlung
Windows System Programming
Windows System Programming
Das Kompendium liefert viele interessante Informationen zur Windows-Programmierung auf Englisch. [Mehr Infos...]
FreeBASIC-Chat
Es sind Benutzer im FreeBASIC-Chat online.
(Stand:  )
FreeBASIC bei Twitter
Twitter FreeBASIC-Nachrichten jetzt auch über Twitter erhalten. Follow us!

Referenz - __FB_ARGV__

Referenz-Navigation

 

Typ: Vordefiniertes Symbol

__FB_ARGV__ wird in der ausführbaren Datei zu einem BefehlsreferenzeintragPointer umgesetzt. Dieser zeigt auf einen Speicherbereich, in dem sich weitere BefehlsreferenzeintragZSTRING BefehlsreferenzeintragPTRs befinden, die auf die einzelnen Kommandozeilenparameter zeigen.
Gemeint ist die Kommandozeile, die an das Programm selbst, nicht an den Compiler übergeben wurde; siehe dazu BefehlsreferenzeintragCOMMAND.

Beispiel:

Declare Function main ( ByVal argc As Integer, ByVal argv As ZString Ptr Ptr ) As Integer

End main( __FB_ARGC__, __FB_ARGV__ )

Function main ( ByVal argc As Integer, ByVal argv As ZString Ptr Ptr ) As Integer
   For i As Integer = 0 To argc - 1
      Print "arg "; i; " = '"; *argv[i]; "'"
   Next

   Sleep
   Return 0
End Function

Beispiel 2:

Declare Sub mySub(argc As Integer = 0, argv As ZString Ptr Ptr = 0)

Print "Hauptprogramm:"
Print "ARGC: " & __FB_ARGC__
Print "ARGV: " & *__FB_ARGV__[0]
Print

mySub(__FB_ARGC__, __FB_ARGV__)   'mit Übergabeparametern aufrufen
Print

mySub                                                 'ohne Übergabeparameter aufrufen
Print

Sleep

'#################################################
Sub mySub(argc As Integer = 0, argv As ZString Ptr Ptr = 0)
   If argc <> 0 And argv <> 0 Then
      Print WStr("Unterprogramm mit Übergabe:")
      Print "ARGC: " & argc
      Print "ARGV: " & *argv[0]
   Else
      Print WStr("Unterprogramm ohne Übergabe:")
      'Print "ARGC: " & __FB_ARGC__         '__FB_ARGC__ und __FB_ARGV__ sind
      'Print "ARGV: " & *__FB_ARGV__[0]    'nur im Hauptprogramm zugänglich
   End If
End Sub

Hinweis:
__FB_ARGV__ ist nur auf Hauptmodulebene bekannt und funktioniert nicht in Unterprogrammen.

Unterschiede zu QB: neu in FreeBASIC

Unterschiede zu früheren Versionen von FreeBASIC: existiert seit FreeBASIC v0.17

Siehe auch:
Befehlsreferenzeintrag__FB_ARGC__, BefehlsreferenzeintragCOMMAND, BefehlsreferenzeintragDEFINE (Meta), BefehlsreferenzeintragPräprozessoren


Zusätzliche Informationen und Funktionen
  • Der Referenzeintrag wurde am 08.08.2007 von Redakteurytwinky angelegt.
  • Die aktuellste Version wurde am 17.05.2012 von Redakteurnemored gespeichert.
  Versionen Versionen