Einzelnen Beitrag anzeigen

EgonHugeist

Registriert seit: 17. Sep 2011
187 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#138

AW: Anzahl eines Zeichens im String ermitteln

  Alt 15. Jul 2018, 17:10
Kleine Anregungen:

Zitat:
Funktionen von KodeZwerg
CountCharInString, CharInStringA scheitern, wenn #0 im String sind und knallen wenn ein #0 gesucht wird. letzteres sollte mindistens abgefangen und ersteres dokumentiert werden

Zitat:
Funktion AH_CharCountAsm von Andreas aka AHUser aka jbg
ich meine das Result wird nicht initialisiert, wenn der String lehr ist

Zitat:
Aufruf Funktion CharCountAssembler
für CharCountAsm von Neutral General knallte mit {$R+), wenn der String lehr ist. Die function CharCountAsm selber zählt jedoch immer +1 wenn AStr = nil

Zitat:
function IFCount von alzaimar und miep
ist nicht NEXTGEN safe -> falscher Index vom String

Des weiteren muß ich KodeZwerg, wegen der Bemerkung über die Lösung von Ydobon recht geben, zu viele theoretische MemAllocs, welche nicht vergleichbar wären, wenn ... wird den der Code wirklich zu 100%, wie geschrieben, unter XE10.2 ausgeführt??? Weiß der Teufel, wie das zu geht.

im Test selber sollte der gesuchte Char, sowohl die Größe als auch Inhalt des Strings wechseln um alle Ungereimtheiten auszuschließen.

Ansonsten folgende Aufgabe in den Raum gestellt:

Ich bekomme die Aufgabe die Anzahl eines Buchstaben in einem Buch zu finden. Ich soll sie von 1 bis 10000 wiederholen. Buchstabe und Buch wechseln nicht (lt. Uwes Test). Angenommen ihr währed unfehlbar und das Ergebnis steht nach Durchlauf 1 fest ... Wie oft würdet ihr den Job tatsächlich machen?

Die damit verbundene Hypothese: Könnte der Compiler soweit optimiert wurden sein, solch ein Scenario zu erkennen?

Mir kommt Uwes Test a bizzl so vor, als messen wir nur den einmaligen Aufruf-Stack..

Edit:

@@@@jbg

Einfach der Hammer !!! Aber schau mal ob dein Result initialisiert ist, wenn nix zu tun ist!

Geändert von EgonHugeist (15. Jul 2018 um 17:40 Uhr)
  Mit Zitat antworten Zitat