Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » c Kommentare entfernen

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
18.06.2004, 17:37 Uhr
~easy
Gast


Hi,

ich bin auf der Suche nach einer Funktion, mit der Hilfe ich C-Kommentare entfernen kann. Ich habe zwar unter www.fun-soft.de/showtopic.php?threadid=180&amp;post_start=0&amp;time was gefunden, aber die Programme funktionieren alle nicht einwandfrei. Die Lösung von Christian bricht bei mir immer ab und bei der Lösung von virtual werden nicht alle Kommentare gelöscht.
Gibt es noch andere, evtl. sogar einfacher geschriebene Funktionen dafür?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
18.06.2004, 18:05 Uhr
0xdeadbeef
Gott
(Operator)


Kuck dir mal boost::spirit an: www.boost.org

Update: So, jetzt ists fertig.
[code C++]
#include <fstream>
#include <iostream>
#include <iterator>
#include <string>

#include <boost/spirit/core.hpp>
#include <boost/spirit/utility/confix.hpp>
#include <boost/spirit/utility/escape_char.hpp>

using namespace boost::spirit;

template<typename _t> class put_to_stream_a {
std::ostream &os;
public:
put_to_stream_a(std::ostream &o) : os(o) {}

void operator()(_t data) const {
os << data << std::flush;
}

void operator()(const _t* b, const _t* e) const {
std::copy(b, e, std::ostream_iterator<char>(os, ""));
}
};

int main(int argc, char *argv[]) {
std::ifstream fin(argv[1]);
std::string s;
put_to_stream_a<char> to_cout(std::cout);

while(fin) s += fin.get();
parse(s.c_str(),
*(confix_p('"', *c_escape_ch_p, '"')[to_cout] |
comment_p("/*", "*/") |
comment_p("//") |
anychar_p[to_cout]),
nothing_p);
return 0;
}
[/cpp]
Das Forum stellt das mit Syntax-Highlighting nicht richtig dar, deswegen jetzt in schwarz/weiß.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra

Dieser Post wurde am 18.06.2004 um 18:55 Uhr von 0xdeadbeef editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: