Suche Funktionen für C

Cusco

Erfahrenes Mitglied
Ich nochmal, hoffentlich nerve ich nicht zu dolle :(

Ich suche diverse Funktionen für C unter Windows, ich weiss noch nicht welche es alles gibt, und bevor ich sie unnötiger weise selber zusammen zimmer, frage ich hier.

1. Ich suche eine Funktion die einen String durchsucht nach einen Muster, und mir die erste Zeichennr. zurückgibt. z.B. soll im String "Das ist ein Guter String!!" der Text "Guter" gefunden werden. Auf Groß/Kleinschreibung sollte nicht geachtet werden, aber ich suche auch eine die darauf achtet. Wenn nix gefunden wurde sollte 0 bzw FALSE zurück gegeben werden

2. Ähnlich wie 1. nur wird das Muster durch einen anderen String ersetzt, also aus "Guter" wird z.B: "schöner"

Ich habe für Amiga Programmiert und da hiesen unter AmiBlitz2 die Funktioinen so:
zu 1. znr=InStr(String, Findstring,[Startposition])
zu 2. str=Replace$(string,suchstring,ersetzstring)

Die Funktionen sind sehr wichtig ich benötige Sie dauert, zwar noch nicht unter C aber das wird nicht lange auf sich warten :)

In zukunft werde ich hier wohl noch öfters nach Funktionen Fraqen, könnte alsao sein das das Thema sich noch Wochen hinzieht ;)

Edit: Achja 3. eine Funktion die mir einfach nur zurück gibt wie oft ein Muster im String vorkommen, dann könnte man die Endstringlänge berechnen um einen evt. Pufferüberlauf zu vermeiden.
 
Zuletzt bearbeitet:
Hi,

ich wieder, der Anfänger in Windows :)
Ich suche jetzt ne funktion die mir den Dateinamen und eine die mir nur den Path, von einen Dateinamenstring oder wie ich es nennen soll zurückgibt.

Beispiel: 'e:/Path/Datei.txt' einmal soll das Verzeichnis-Name und einmal Nur der Dateiname zurückgeben werden. Das Problem ist auch ich kenne die möglichen Dateipfade von Windows noch nicht, denke ich. Ich komme vom Amiga und da ist ein Path z.B. so "Amiga:Verzeichnis/Datei" also ohne "/" beim Gerätenamen. Wie ist es bei Windows? Und gibt es Vorgefertigte Funktionen dafür irgendwo dafür oder muss ich wieder selber rann?

Ich habe mir schon ein Paar funktionen geschrieben ca. 300-350Zeilen Source insgesamt. Aktuell sitze ich an SN-ListDatei für Windows, ein Prog welches den Titel und Metatags aus HTML-Dateien auslesen und in eine Datei schreiben soll, das Ausgabeformat kann über ne Vorlagen-Textdatei bestimmt werden. so kann z.B: ne Sitemap erstellt werden, oder einfach nur ne Übersicht zur Fehlerkontrolle. Das Prog gibs schon für Amiga, ebenfalls von mir, allerdings mit viel mehr funktionen und vorallem ner GUI. :) Das Programm ist auch relativ beliebt weil es vieles vereinfacht, z.B. ne XML-Datei für Google-Sitemap erstellen, oder ne robots.txt. Das Programm versuche ich jetzt erstmasl für Windows umzusetzen, weshalb ich hier die Vielen Fragen stelle :)

Ich meine irgendwo muss es doch was geben wo viele Solche Grundfunktionen zusammengefasst sind. Ich bin halt noch Amibltz2 verwöhnt und versuche mir Grundfunktionen zusammen zu tragen. Ich habe keine Lust das Rad neu erfinden zu müssen, wie es gerade den Anscheint hat.
 
Die musst du wohl selber zusammenschrauben. Am besten verwendest du reguläre Ausdrücke. Google mal nach PME, das ist eine lib für reguläre Ausdrücke.
Falls du dich mit regexps (regulären ausdrücken) nicht so gut ausdrücken kannst:
http://www.tutorials.de/tutorials142738.html
Ich habe mir schon ein Paar funktionen geschrieben ca. 300-350Zeilen Source insgesamt. Aktuell sitze ich an SN-ListDatei für Windows, ein Prog welches den Titel und Metatags aus HTML-Dateien auslesen und in eine Datei schreiben soll, das Ausgabeformat kann über ne Vorlagen-Textdatei bestimmt werden. so kann z.B: ne Sitemap erstellt werden, oder einfach nur ne Übersicht zur Fehlerkontrolle. Das Prog gibs schon für Amiga, ebenfalls von mir, allerdings mit viel mehr funktionen und vorallem ner GUI. Das Programm ist auch relativ beliebt weil es vieles vereinfacht, z.B. ne XML-Datei für Google-Sitemap erstellen, oder ne robots.txt. Das Programm versuche ich jetzt erstmasl für Windows umzusetzen, weshalb ich hier die Vielen Fragen stelle
Du kannst auch bison/flex ausprobieren. Das funktioniert in solchen Fällen prima. Siehe auch
http://jschmidt.homelinux.com/program/dhcpparse, dort ist ein Programm, welches die dhcpd.leases Datei von dhcpd parst und eine HTML-Tabelle erzeugt.
 
Zuletzt bearbeitet:
Cusco hat gesagt.:
Ich suche jetzt ne funktion die mir den Dateinamen und eine die mir nur den Path, von einen Dateinamenstring oder wie ich es nennen soll zurückgibt.
Dafür könntest du die Funktion _splitpath() verwenden, die einen Pfad in seine Bestandteile zerlegt, mit denen du dann nach Belieben arbeiten kannst.
Cusco hat gesagt.:
Ich meine irgendwo muss es doch was geben wo viele Solche Grundfunktionen zusammengefasst sind. Ich bin halt noch Amibltz2 verwöhnt und versuche mir Grundfunktionen zusammen zu tragen. Ich habe keine Lust das Rad neu erfinden zu müssen, wie es gerade den Anscheint hat.
Sicher gibt es sowas. Wenn du mit C programmierst, gibt es die C-Runtime-Library und wenn du darüber hinaus noch unter Windows programmierst, solltest du einen Blick auf die Windows-API-Funktionen werden. Zu beiden gibt es Online-Referenzen, z.B. bei der MSDN:
C Runtime Library
Windows API

Gruß
MCoder
 
Das ist gar nicht mal so schlecht, aber Leider hapert es mitr meinen Englisch. Gibt es sowas auch auf Deutsch?
 
Wie Formatiere ich eine Zahl z.B. so als string "31,123.00" ? Ich kann nur die Formatierung mit den Nachkommastellen aber die stellen davor bleiben unberührt :(
 
Cusco hat gesagt.:
Wie Formatiere ich eine Zahl z.B. so als string "31,123.00" ? Ich kann nur die Formatierung mit den Nachkommastellen aber die stellen davor bleiben unberührt :(
Normalerweise sollte man sowas umgebungsabhängig einstellen - sprich das Format sollte abhängig von der Locale sein. D.h. wenn ich eine deutsche Locale eingestellt habe sollte das Programm einen Punkt als Tausendertrennzeichen und ein Komma für den Dezimalpunkt benutzen, im Englischen dann andersherum.

Dies erreicht man am einfachsten mit der setlocale Funktion.
Code:
setlocale(LC_ALL, "");
(siehe MSDN)

Gruß
 

Neue Beiträge

Zurück