Programmierhilfe-Prozeduren
- Hroudtwolf
- Beiträge: 1416
- Registriert: 30.10.2004 23:33
- Kontaktdaten:
Programmierhilfe-Prozeduren
Entfernt. Out of date.
Zuletzt geändert von Hroudtwolf am 05.03.2008 02:27, insgesamt 1-mal geändert.
-
- Beiträge: 6267
- Registriert: 29.08.2004 08:37
- Computerausstattung: Hoffentlich bald keine mehr
- Kontaktdaten:
Gut, aber könntest du nen kleinen Überblick der Funktionen machen? Und dann wären die CodeTags noch angebracht:
[ code]DeinCode[ /code]
mach die Leerzeichen nach [ weg, dann funktionierts.
[ code]DeinCode[ /code]
mach die Leerzeichen nach [ weg, dann funktionierts.
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
Die 3 If's kann man perfekt zu Select Case umformen.Hroudtwolf hat geschrieben:Code: Alles auswählen
Procedure.s GetRunlevel() a = GetSystemMetrics_(#SM_CLEANBOOT) If a=0:md$="Normal":EndIf If a=1:md$="Failsafe":EndIf If a=2:md$="Failsafe and Networkboot":EndIf ProcedureReturn Trim(md$) EndProcedure
Läuft dann wahrscheinlich auch schneller, wobei die Proc
ja eh selten aufgerufen wird. Die Variable a sparst du auch gleich.
Code: Alles auswählen
Procedure.s GetRunlevel()
Select GetSystemMetrics_(#SM_CLEANBOOT)
Case 0
md$="Normal"
Case 1
md$="Failsafe"
Case 2
md$="Failsafe and Networkboot"
EndSelect
ProcedureReturn Trim(md$)
EndProcedure
- Hroudtwolf
- Beiträge: 1416
- Registriert: 30.10.2004 23:33
- Kontaktdaten:
Programmierhilfe
Entfernt. Out of date.
Zuletzt geändert von Hroudtwolf am 05.03.2008 02:27, insgesamt 2-mal geändert.
Hier mal meine Version von ExaktDate
Hab nur die ganzen If's wieder durch Select Case ersetzt.
Bei GetRunlevel() war das ja noch nicht so Speed entscheidendt,
aber eine Datumsfunktion ruft man bestimmt öfter auf. Bei
ExaktTime(prm) das gleiche Spielchen. Nur ist es da wahrscheinlich
noch gravierender als bei GetRunlevel(), wenn man z.B. eine Uhr
proggt. Hab noch viele Dinge gesehn, die du optimieren könntest, aber
dieses ist mir einfach ins Auge gesprungen.
Code: Alles auswählen
Procedure.s ExaktDate(prm)
GetLocalTime_(@s.SYSTEMTIME)
Monat$=Str(s\wMonth)
Tag$=Str(s\wDay)
If Len(Monat$)=1:Monat$="0"+Monat$:EndIf
If Len(Tag$)=1:Tag$="0"+Tag$:EndIf
Select prm
Case 1
Datum$=Tag$+"."+Monat$+"."+Str(s\wYear)
Case 2
Datum$=Str(s\wYear)
Case 3
Datum$=Tag$
Case 4
Datum$=Monat$
Case 5
Datum$=Monat$+"\"+Tag$+"\"+Str(s\wYear)
Case 6
Datum$=Monat$+"\"+Right(Str(s\wYear),2)
EndSelect
ProcedureReturn Datum$
EndProcedure
Bei GetRunlevel() war das ja noch nicht so Speed entscheidendt,
aber eine Datumsfunktion ruft man bestimmt öfter auf. Bei
ExaktTime(prm) das gleiche Spielchen. Nur ist es da wahrscheinlich
noch gravierender als bei GetRunlevel(), wenn man z.B. eine Uhr
proggt. Hab noch viele Dinge gesehn, die du optimieren könntest, aber
dieses ist mir einfach ins Auge gesprungen.
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
mhh, bei größeren Änderungen sollte man IMHO schon den neuen Code extra posten.
Bei Tippfehlern oder so kann mans nat. gleich im ersten Code ändern,
aber gefallen tuts mir so wies Hroudtwolf gemacht hat, besser.
Es ist halt auch interessant, zu erfahren, was geändert wurde, und wie die alte Version aussah. Vielleicht sagt mir die Neue ja nicht zu.
Bei Tippfehlern oder so kann mans nat. gleich im ersten Code ändern,
aber gefallen tuts mir so wies Hroudtwolf gemacht hat, besser.
Es ist halt auch interessant, zu erfahren, was geändert wurde, und wie die alte Version aussah. Vielleicht sagt mir die Neue ja nicht zu.
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Sinnvolle Einrückungen für mein empfindliches Auge fehlen leider auch.
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.
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.