realisticer
-
Gesamte Inhalte
33 -
Benutzer seit
-
Letzter Besuch
Inhaltstyp
Profile
Forum
Downloads
Kalender
Blogs
Shop
Beiträge von realisticer
-
-
Morgen,
schau dir mal die Funktion 'popen' an.
mfg
realisticer
-
Zeig doch mal, wie du das aufrufst.
mfg
realisticer
-
std::ostream& operator<<(std::ostream& os, const Adresse& addr) { os << addr.get_vorname() << '\t' << addr.get_name() << '\n'; // ... und so weiter, halt eine Format wählen, wie es ausgegeben werden soll }
Wobei wir hier 'os' natuerlich auch am Ende wieder zurueckgeben, schliesslich wollen wir ja auch sowas wiecout<<addr1<<addr2<<addr3;
schreiben koennen
mfg
realisticer
-
...das nächste mal das ganze etwas bunter und mit mehr animationen machen...
Ja, nachdem was ich so gehoert habe, frage ich mich, ob das bei vielen
Pruefern wichtiger ist, als der Inhalt der praesentiert wird.
Ausserdem scheint bei uns es auch wichtiger zu sein, wo den die Navi zu
sein hat. Ob oben, unten, links oder rechts...jedes Jahr anders.
Das ist natuerlich unglaublich wichtig.
mfg
realisticer
-
Zu den Flags und moeglichen Fehlerkonstanten solltest du einmal in die Manpage schauen
(man 2 open).
mfg
realisticer
-
-
Was soll denn das "Machwerk" kosten ???
http://www.amazon.de/exec/obidos/ASIN/3899901231/qid%3D1116423990/302-3982950-8836063
Es ist leider gar nicht so billig. Aber das ist ein generelles Problem bei
Fachliteratur.
mfg
realisticer
-
@realisticer, danke für die Links, zwei kenne ich schon, trotzdem nochmals danke und sorry fürs nerven...
Es geht gar nicht darum dass du nervst. Das tust du nicht.
Es ist nur offentsichtlich so, dass du mit der Aufgabe nicht zurecht kommst und
nicht zurecht kommen wirst. Nicht bedingt dadurch, dass du zu bloed dazu
waerst, sondern schlicht weg aus dem Grund, dass dir die noetigen Grundlagen
dazu fehlen.
Du kannst natuerlich Fragen stellen, nur wirst du viele Antworten nicht
verstehen, da dir die eben angesprochenen Grundlagen fehlen.
Das ist wie eine Art Teufelskreislauf. Du Fragst, wir erklaeren. Du verstehst
es nicht und fragst und wir versuchen wieder etwas einfacher zu erklaeren.
Nur: So kommen wir natuerlich nicht weiter. Die Funktion open_port ist ja
jetzt soweit fertig. Du musst sie und die anderen Funktionen nun in der
main-Funktion zusammenfuehren, so dass ein entsprechendes Programm
herauskommt, welches eine spezifische Aufgabe erledigt.
Es kommt so vieles auf einmal zusammen und es duerfte schwer fuer dich
sein, den roten Faden im Auge zu behalten.
Es ist nichts hier boese gemeint.
mfg
realisticer
-
Schau dir diese Tutorials an:
http://tutorial.schornboeck.net/inhalt.htm
Schon was aelter, ist aber in Ueberarbeitung:
http://www.volkard.de/vcppkold/inhalt.html
Ansonsten:
http://www.c-plusplus.de/cms/modules.php?op=modload&name=Downloads&file=index
mfg
v R
-
Nun,
1.) eine Quelltextdatei ist nicht ausfuehrbar
2.) das programm tut ja auch nichts, als das device oeffnen. Du hast null Funktionalitaet
implementiert
3.) Ich sehe das jetzt nur noch als "Hoppla, da will mir jemand einen Baeren aufbinden" an
mfg
realisticer
-
Weisst du eigentlich, wie ein gueltiges C/C++-Programm aussieht?
Ich empfehle dir mal folgendes:
http://tutorial.schornboeck.net/inhalt.htm
#include <stdio.h> // Standard input/output definitions #include <string.h> // String function definitions #include <unistd.h> // UNIX standard functiondefinations #include <fcntl.h> // File controll definations #include <errno.h> // Error number definations #include <termios.h> // POSIX terminal controll definations /* * 'open_port()' - Open serial port 1. * * Returns the file descriptor on success or -1 on error. */ int open_port() { int fd; // File discriptor for the Port fd = open("/dev/ttyS0", O_RDWR | O_NOCTTY | O_NDELAY); if (fd == -1) { /* * Could not open Port. */ perror("open_port: Unable to open /dev/ttyS0 - "); } else fcntl(fd, F_SETFL, FNDELAY); return (fd); } int main(int argc, char* argv[]) { /*das ist die hauptfunktion deines programms. *von hieraus wird alles aufgerufen. *z.b.: */ int fd = open_port(); //tue irgendwas mit fd (was weiss ich, lesen, schreiben etc.) return 0; }
mfg
realisticer
-
Da faellt mir noch auf: sizeof(data) muss mit 8 multipliziert werden
mfg
realisticer
-
Hast du ueberhaupt eine main-Funktion?
mfg
realisticer
-
Malzeit,
ich habe gestern und heute vormittag mal folgenden Code zusammengesucht/-geschrieben
Ja, das ist auch das Hauptproblem.
Phade@isesrv101:~/C-Programme> gcc port.cpp /usr/lib/gcc-lib/i586-suse-linux/3.3.3/../../../crt1.o(.text+0x18): In function `_start': ../sysdeps/i386/elf/start.S:98: undefined reference to `main' /tmp/ccGWuVPS.o(.eh_frame+0x11): undefined reference to `__gxx_personality_v0' collect2: ld returned 1 exit status Phade@isesrv101:~/C-Programme>
Weiß eventuell jemand was ich da falsch gemacht habe :confused:
Ich finde einfach keinen Anfangspunkt.
(Zur Verteidigung, den Anfang habe 1:1 übernommen)
Thanx,
gcc durch g++ ersetzen. Oder du musst explizit libstdc++ mitlinken.
mfg
realisticer
-
Morgen,
falls es von Interesse ist, so ist man etwas flexibler:
template<size_t bitfieldSize>
struct bits {
size_t bit : bitfieldSize;
void write(ostream& out) const {
for(int i = bitfieldSize; i >= 0; --i)
if(bit & (1 << i))
out<<"1";
else
out<<"0";
}
bits& operator<<(const std::string& data) {
memcpy(this, data.c_str(), min(bitfieldSize, data.size()));
return *this;
}
bits& operator<<(const long& data) {
memcpy(this, &data, min(bitfieldSize, sizeof(data)));
return *this;
}
bits& operator<<(const double& data) {
memcpy(this, &data, min(bitfieldSize, sizeof(data)));
return *this;
}
};
template<size_t bitfieldSize>
ostream& operator<<(ostream& out, const bits<bitfieldSize>& {
b.write(out);
return out;
}
[/PHP]Als kleines Beispielprogramm:
[PHP]
int main() {
const char* text = "test";
bits<32> bit;
bit << text;
cout<<bit<<endl;
size_t i = 4;
bit << static_cast<long>(i);
cout<<bit<<endl;
}mfg
realisticer
-
Meine Vorlaeufigen Ergebnisse:
GA1: 84%
GA2: 87% (durch eigene bloedheit keine 1 )
Wiso weiss ich noch nicht.
mfg
realisticer
-
HS 5) Artikel-Aus-Datenbank-Hol-Dingens: Hier gabs auch keine wirkliche Schwierigkeit. Die Funktionen SubStr sowie strPos finden sich in ähnlicher Weise fast in jeder Sprache. Wo lag das Problem
Wenn ich mich noch recht erinnere, dann gab es keine Funktion, mit der du die
Laenge des Strings bestimmen konntest. D. h. du konntest den letzten Teilstring
nicht extrahieren, da kein "_" mehr vorhanden war.
Hab die Aufgabe aber leider nicht mehr komplett im Kopf.
mfg
realisticer
-
Und welchen HS hast du gestrichen?
Oder wurde das wieder umgestellt?
Hab die 3 gestrichen.
mfg
realisticer
-
Ja, die GA 1 war zeitmaessig der Hammer. Hatte nur noch ne 15min, war gerade
mit HS 4 fertig. Die 5 und 6 schnell angeschaut. Erstmal die 6 niedergekritzelt
und dann noch die 5. Zeit leider nicht voellig ausreichend, hab die 5 nicht zu
100% fertig machen koennen.
Die GA 2 war ok. Im Grossen und Ganzen sehr viel zu schreiben. Wiso ging.
Nach der GA 1 war die Stimmung im Saal bzw. draussen in der kurzen Pause...
naja, das Zeitproblem hatten _sehr_ viele. Es wurde eigentlich fast ueberall
ueber dieses Problem geredet. Hab auch von einigen gehoert, die, wie ich,
eine Aufgabe zum Schluss nicht 100% beenden konnten.
Von den SI's hab ich auch gehoert, dass die GA 1 echt der Hammer war.
Jetzt heisst es abwarten.
mfg
realisticer
-
wie ich hier bereits wiederholt geschrieben habe, nehme ich ich zu Anfragen bzgl. kompletter Anträge, Dokus usw. - auch zu denen, die mir als PersMail zugeschickt werden - grundsätzlich nicht Stellung.
Mein Urteil über eine solche Arbeit hätte sowieso keine juristisch verwertbare Aussagekraft, da mir die örtlichen Vergleichskriterien des Anfragenden fehlen.
Und ich will vermeiden, dass aufgrund meines Urteils als PA-Mitglied hier jemand eine präjudizierende Wirkung in meine ganz persönliche Meinung hineininterpretiert. Denn ich bin nur EIN Mitglied des PA FISI hier in Bonn - nicht DER Prüfungsausschuss.
Auf gezielte Fragen gebe ich im Forum immer gerne Antworten - soweit ich dazu etwas zu sagen weiss.
gruss, timmi
Ich interpretiere nirgends etwas ein. Das ist wie mit einer Deutscharbeit. Gib
sie 4 verschiedenen Lehrern aus 4 verschiedenen Bundeslaendern und du
erhaelst 4 verschiedene Noten.
Aber es ist etwas, woran man sich orientieren kann.
Mein Prüfungsantrag war insgesamt etwa halb so lang und wurde kommentarlos vom PA akzeptiert.
Ich weiß nicht wie es bei euch ist, aber ich (IHK Nürnberg) hatte in dem Antrag praktisch keine technischen Details stehen, eher ein allgemeiner Überblick über das Projekt, ich schätze mal das ist es worauf es ankommt.
Nun, ich habe Projektantraege gesehen, die weniger und die mehr als ich
drin hatten, welche genehmigt worden sind.
Es kommt immernoch auf die Person an, welche den Antrag zu bewerten hat.
mfg
-
Tjä, komisch ist nur, dass ich beim Lesen des Antrags genau diese Hinweise auch gegeben hätte. Und ich bin Vorsitzender der PA FISI in Bonn.
...Jetzt kannst Du entweder über meine "langjährige Praxis und Erfahrung" nachdenken - oder aber über Deine Selbstkritik-Fähigkeit.
gruss, timmi
Vielleicht koenntest du dir meine ueberarbeitete Version mal anschauen und mir
Kritik oder Verbesserungsvorschlaege geben.
mfg
-
Ich habe zwar noch keine Praesentation, aber wenn du ein Medium hast, ist
es denke ich nicht so schlimm, wenn man ein anderes nicht nutzt.
Ist die Angabe nicht eher ein Vorschlag? Oder ist die wirklich so verbindlich,
dass die jetzt darauf bestehen?
Letztlich bleibt dir natuerlich nichts anderes uebrig, als deine Praesentation
durchzuziehen. Vielleicht faellt dir ja doch noch was ein, was du auf dem
Flipchart zeigen koenntest (vielleicht waehrend des Fachgespraeches?).
mfg
-
Morgen allerseits,
ich habe das alles nochmal ueberarbeitet. Bitte schaut euch das doch mal an.
------
1.Projektbeschreibung
1.1Problembeschreibung (Ist-Zustand)
Die in unserer Firma eingesetzten Router vom Typ Bintec (hier speziell Modell X1200) protokollieren verschiedene Informationen zu Betriebszuständen. Diese können entweder über die im Router integrierte Konfigurationskonsole in einer Auflistung angesehen, kontinuierlich angezeigt oder per UDP-Protokoll an einen beliebigen Client ausgegeben werden.
Für die Mitschrift der Protokollierungsdaten per UDP stellt die Firma Bintec ein Programm zur Verfügung, das diese Daten in eine Textdatei ablegt.
Alle Darstellungen, sowohl die Router eigenen, als auch die des Zusatzprogramms haben den Nachteil, das keinerlei Filterung der ausgegebenen Daten nach Bestimmten Kriterien z.B. Protokoll, IP-Adressen, usw. möglich ist. Dadurch ist eine sinnvolle Auswertung der Daten zur Diagnose von Fehlern oder Überwachung des Betriebszustandes des Routers nicht möglich.
1.2Ziel des Projektes (Soll-Zustand)
Im Rahmen meiner Projektarbeit soll eine Anwendung entwickelt werden, welche die Möglichkeit
der Filterung nach bestimmten Kriterien und die übersichtliche Präsentation der gefilterten Daten
ermöglicht. Dazu gehört das Programmdesign, sowie Entwicklung des Back- und Frontends.
Features der Anwendung:
- Filter nach folgenden Kriterien
- Ein- und ausgehende Verbindungen
- IP-Adresse
- Art des verwendeten Protokolls
[*]Filtermanager
- anzeigen, erstellen, löschen von Filterregeln
- Filterkriterien sollen beliebig mit den Junktoren UND, ODER und NICHT
kombinierbar sein
[*]Profilmanager
- anzeigen, erstellen, löschen von Routerprofilen
- Auswahl der Art und Weise, wie Routerprofile gespeichert werden sollen (z.
B. INI-Datei)
[*]Schnellfilter
- mit Hilfe einer solchen Regel soll der Anwender ohne den Filtermanager eine
Regel schnell erstellen und anwenden können
[*]Lauffähigkeit (oder sollte ich es Zielplattform nennen?)
- Die Anwendung soll auf den Betriebssystemen Linux/*BSD und MS Windows
lauffähig sein
Zum Abschluss des Projektes steht unseren Technikern ein Programm zur Verfügung, mit
welchem sich die Protokollierungsdaten des Routers übersichtlich auswerten und anzeigen lassen.
2.Beschreibung des technischen Umfeldes / Systembeschreibung
Die eingesetzte Programmiersprache wird C++ sein. Zur Erstellung der grafischen Oberfläche wird
die Bibliothek 'gtkmm' eingesetzt. Weiterhin wird die Boost-Bibliothek verwendet, welche unter
anderem eine Bibliothek zur Verarbeitung von Regulären Ausdrücken zur Verfügung stellt, sowie
eine Socket Bibliothek von Toni Schornböck, welche die Netzwerkfunktionalität der
Betriebssysteme Linux/*BSD und Windows kapselt.
Als Entwicklungsumgebung wird das frei verfügbare MinGW Developer Studio eingesetzt, welche
den C++ Kompiler aus der GNU Compiler Collection (gcc) einsetzt.
3.Projektphasen mit Zeitplan in Stunden
- Analysephase 12
[*]Designphase 10
- Programmdesign
- Erstellung eines Klassendiagramms
- Erstellung eines DV-Konzeptes
[*]Realisierung 27
Entwicklung des Back- und Frontends
[*]Testphase 07
- Testen der Anwendung auf Funktionalität
- Erstellen der Testdokumentation
[*]Übergabe 03
- Übergabe des Programms an die Techniker und Einführung in das Programm
[*]Dokumentation 11
- Erstellung der Projektdokumentation
Gesamtstundenzahl 70
4.Geplante Dokumentation zur Projektarbeit
1.Fachkonzept
2.Klassendiagramm
3.DV-Konzept
4.Testdokumentation
5.Quelltext
------
Tut mir leid, aber die Formatierung geht hier natuerlich etwas verloren, hoffe
es ist trotzdem recht uebersichtlich.
Was sagt ihr zu dieser Version?
mfg
Analyse des Ist-Zustandes
Definition des Soll-Zustandes
Erstellung eines Fachkonzeptes
- Filter nach folgenden Kriterien
-
Wie sieht es mit meinem ueberarbeiteten Antrag aus?
§15
1. a) Ist ja wohl klar. Es handelt sich um eine Neuentwicklung
und 1. kann doch erst aus der Doku hervorgehen.
mfg
Datei Eingabe/Ausgabe
in C und C++
Geschrieben
Es kommt, imho, auf den einzelnen Fall an. Hier zu pauschalisieren ist m. A. nach
schwachfug.
Du meinst Namenskonflikte? Sicherlich merkst du die, denn der Compiler
wird dich darauf aufmerksam machen.
Es ist fuer _mich_ definitiv nicht akzeptabel, sich damit staendig abzuquaelen.
Es hilft mir auch nicht bei der Lesbarkeit.
Es gibt pro und contra Argumente fuer die using-Direktive als auch fuer die
using-Deklaration.
mfg
realisticer