- Registriert
- 05.06.06
- Beiträge
- 141
Hallo,
ich bräuchte Hilfe bei einem C++ Programm. Es gibt 2 Funktionen:
1. auswerten
2. match
Dabei wird in match ein regulärer Ausdruck realisiert, z. B. ^a*.5$. Die Zeichnenkette sollen während der Auswertung umgedreht werden, so daß bei einer Eingabe von
abcd5
der Vektor
5dcba
enthalten soll. Meine Schwierigkeit liegt dabei, daß ich die Zeichnenketten nicht umdrehen kann. Das sollte ja eigentlich über einen Zeiger möglich sein, der einfach von hinten nach vorne liest. Nur, wie realisier ich das? Das Problem liegt in der Funktion auswerten.
Anbei noch ein Codefragment:
ich bräuchte Hilfe bei einem C++ Programm. Es gibt 2 Funktionen:
1. auswerten
2. match
Dabei wird in match ein regulärer Ausdruck realisiert, z. B. ^a*.5$. Die Zeichnenkette sollen während der Auswertung umgedreht werden, so daß bei einer Eingabe von
abcd5
der Vektor
5dcba
enthalten soll. Meine Schwierigkeit liegt dabei, daß ich die Zeichnenketten nicht umdrehen kann. Das sollte ja eigentlich über einen Zeiger möglich sein, der einfach von hinten nach vorne liest. Nur, wie realisier ich das? Das Problem liegt in der Funktion auswerten.
Anbei noch ein Codefragment:
Code:
#include <string>
#include <vector>
#include <cstddef>
#include <cctype>
using namespace std;
int auswerten(char const **argv, vector<string>& v)
{
if(!argv)
return -1;
string temp("");
for(;*argv;++argv)
{
temp=match(*argv);
for(size_t d(0);d<temp.length();++d)
{
// Hier steh ich auf dem Schlauch
}
v.push_back(temp);
}
return 0;
}
string match(char const *p)
// Hier wird der reguläre Ausdruck realisiert
// ...