Hier könnt Ihr gute, von Euch geschriebene Codes posten. Sie müssen auf jeden Fall funktionieren und sollten möglichst effizient, elegant und beispielhaft oder einfach nur cool sein.
BlueHoschi hat geschrieben:
@TS
bei dem PSDK-Launcher bekomme ich nur ein leeres Bild, was muß ich jetzt tun (bitte Fremder nimmst Du mich an die Hand und bringst mich zu Mami?). Also vielleicht mal ´ne Erklärung für Dummies...
PSDK oder MSDN bei MS downloaden und installieren. Einmal über
Startmenü aufrufen.
Den Launcher als IDE-Tool oder jaPBe-Tool konfigurieren, einzige empfehlenswerte Einstellung ist ein Shortcut z.B. Alt-F1
Ansonsten gehts automatisch, notfalls nochmal eintragen mit dem parameter
-config und dann nen Namespace aussuchen.
Steht alles in dem Thread, ansonsten zeigste das Bild der Mami, die macht
es dann
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Wenn man jetzt die Daten dieser Struktur bearbeiten möchte, aber auch enen Zugriff auf den Pointer haben möchte (z.B. um den Pointer selbst zu beschreiben), so benötigt man 2 Pointer, was man in C mit ** machen kann, aber in PureBasic nicht möglich ist. Man müsste eine Pointer-Struktur extra für diese Struktur erstellen, was sehr nerfig ist.
Structure Struct
X.l
Y.l
EndStructure
Procedure ReturnProc()
*id.Struct = AllocateMemory(SizeOf(Struct))
*id\X = 5
*id\Y = 10
ProcedureReturn *id
EndProcedure
*ret.Struct = ReturnProc()
Debug *ret\X ;Auf die Elemente zugreifen
Debug *ret\Y
Debug *ret ;Und voila, hier ist der Pointer
FreeMemory(*ret)
*ret allein ist ein ganz normaler Pointer, *ret\X greift mithilfe der Structure-
Deklarierung auf den reservierten Speicher zu und gibt mir den dort gespeicherten Wert.
Bin nur noch sehr selten hier, bitte nur noch per PN kontaktieren
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Ja schon klar, aber das braucht er ja auch nicht. Soweit ich jetzt verstanden hab
will er den "strukturierten" Pointer auch als normalen Pointer ansprechen und
ändern können. Und das zeigt ja mein obiges Beispiel. Hab ich das jetzt richtig verstanden?
Bin nur noch sehr selten hier, bitte nur noch per PN kontaktieren
> Hab ich das jetzt richtig verstanden?
Keine Ahnung, wird wohl so sein
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
PB-Hilfe zu Prozeduren hat geschrieben:Um ein Array oder eine Linked List zurückzuliefern, kann ProcedureReturn nicht verwendet werden. Übergeben Sie zu diesem Zweck das Array oder die Linked List als Parameter an die Prozedur.
procedure getarray()
dim array.s(5)
for i = 0 to 5
array(i) = "test"+str(i)
next i
procedurereturn @array()
enprocedure
dim array2.s(5)
array2() = getarray()
for i = 0 to 5
debug array2(i)
next i
bei mir kommt an arraystelle 1 immer ein falscher wert... der rest geht!