-
Gesamte Inhalte
9912 -
Benutzer seit
-
Letzter Besuch
-
Tagessiege
3
Inhaltstyp
Profile
Forum
Downloads
Kalender
Blogs
Shop
Alle Inhalte von Klotzkopp
-
Das hier tut nicht, was du erwartest. Der Inkrementoperator bindet stärker als der Dereferenzierungsoperator. Hier wird also zuerst der Zeiger n inkrementiert, und dann der inkrementierte Zeiger dereferenziert (was im allgemeinen keinen Nebeneffekt hat, aber bei ungültigen Zeigern undefiniertes Verhalten bewirkt). Du willst erst dereferenzieren und dann inkrementieren, also musst du Klammern benutzen: (*n)++; Noch besser wäre, wenn du dir gleich angewöhnst, Prefix statt Postfix zu benutzen: ++*n;Da hast du das Problem nicht Referenzen gibt's in C nicht.
-
Der Suche ist Groß-/Kleinschreibung egal. War wohl doch falsch
-
Portweiterleitung auf dem heimischen Router eingerichtet?
-
Such-IDs sind hier flüchtig. Wenn du oben im Suchfenster Mobile Device Management eingibst, solltest du 14 Treffer oder so bekommen.
-
Ich würde festlegen, was die öffentliche Schnittstelle der DLL ist, und genau die dazu gehörenden Klassen und Funktionen exportieren. Man verwendet DLLs nicht zuletzt ja auch deshalb, weil man sie unabhängig von den sie verwendenden Programmen aktualisieren kann. Jedes exportierte Symbol stellt dabei eine Abhängigkeit dar, deren Zusicherungen nicht verändert werden dürfen. Aber nochmal zu deinem letzten Codefragment: Du solltest nicht den C-Style-Cast verwenden. Der macht je nach Situation etwas anderes. Benutz lieber die C++-Casts (static_cast, const_cast, reinterpret_cast), die erfüllen jeweils eine ganz bestimmte Aufgabe, und man sieht ihnen auch gleich an, was sie tun sollen. Der Cast von Child* auf Mother* ist wie gesagt unnötig, das muss ohne Cast gehen. Ein Cast von Mother* auf Child* ist verdächtig. Wenn Mother ein ordentliches Interface ist, sollte der nicht notwendig sein, virtual kümmert sich darum, dass die richtige Methode aufgerufen wird. Allgemein sollten Casts in deinem Code eher selten auftauchen. Viele Casts (insbesondere dynamic_cast) weisen auf ein Designproblem hin. Und schließlich würde ich Smartpointer verwenden. Dein Code ist nicht "exception safe". Wenn GetString oder GetInt eine Exception wirft, wird das delete übersprungen, und du hast ein Speicherleck. Die Antwort auf dieses Problem ist allerdings nicht, jeden Funktionsaufruf in einen try-Block zu stecken, sondern RAII. Wenn sich ein Smartpointer automatisch um das delete kümmert, kannst du es nicht mehr vergessen, und auch bei einer Exception wird es ausgeführt.
-
Erstens brauchst du gar keinen Cast, um einen Child- in einen Mother-Zeiger umzuwandeln, das ist eine implizite Konvertierung. Zweitens gibst du die Adresse eine lokalen Variablen zurück. Die Variable result wird am Ende von GetMotherInstance zerstört, der zurückgegebene Zeiger ist ungültig. Drittens sollte eine Schnittstelle keine Datenmember haben, und die Methoden sollten pure virtual sein.
-
Du darfst nicht strlen benutzen, diese Funktion ist für Text. Sie zählt die Bytes bis zum ersten Nullbyte, das bei Strings eine Endmarkierung darstellt. In Binärdaten dürfen aber durchaus auch mittendrin Nullbytes auftauchen. Dein Puffer ist aber nicht so groß. Du musst den Puffer wirklich vergrößern, es reicht nicht, die Funktion über die Größe zu belügen.
-
Und du tust es nicht, weil...? Offensichtlich nicht. Du solltest nicht erwarten, dass sich irgendjemand die Mühe macht, Workarounds um Probleme zu erarbeiten, die nur auftreten, weil du dich nicht an elementarste Empfehlungen hältst. Du könntest einen Bugreport bei Oracle erstellen. Aber auch da wirst du dir wohl die Frage gefallen lassen müssen, warum du es nicht einfach ordentlich machst.
-
Zum vierten Mal: Man muss ein Struktogramm überhaupt nicht in einer bestimmten Sprache ausfüllen!
-
Das sind zwei Teilaufgaben. Text -> Algorithmus und Algorithmus -> Struktogramm. Welcher Teil bereitet dir Probleme? (Und warum habe ich das Gefühl, dass diese Frage schon zweimal in diesem Thread steht?) Zum dritten Mal: In keiner bestimmten Programmiersprache. Du kannst Pseudocode benutzen. In manchen Programmiersprachen gehören Klammern zu jedem Funktionsaufruf. Wenn die Funktion/Methode Parameter benötigt, schreibt man die Argumente in die Klammer.
-
Dein größter Fehler ist, dass du die bei der Verschlüsselung entstehenden Binärdaten wie Text behandelst. Es ist völlig normal, dass beim Verschlüsseln auch Bytewerte entstehen, die, als ASCII interpretiert, einen Zeilenumbruch darstellen. Es ist allerdings Unsinn, Binärdaten als ASCII zu interpretieren. Du kannst die verschlüsselte Datei nicht als Text behandeln, das kann die Daten verfälschen. Du kannst auch nicht den Inhalt mit einem Texteditor kopieren und einfügen. Ich rate dir, die Datei nicht als .txt zu speichern, damit du sie nicht aus Versehen mit einem Programm für Textdateien öffnest und damit die Daten beschädigst. Du darfst Binärdaten nicht mit << in eine Datei schreiben und nicht mit >> lesen. Benutz fstream::read und fstream::write. Ein weiterer Fehler ist hier: BYTE* encrDecrData=(BYTE*)content.c_str(); c_str gibt einen const-Zeiger zurück. Wenn du die const-Qualifizierung durch den Cast entfernst, erzeugst du undefiniertes Verhalten. encryptdata = CryptEncrypt( phKey, 0, true, 0, encrDecrData, &dlength, 2048);[/code]Hier teilst du der Funktion CryptEncrypt mit, dass der übergebene Zielpuffer 2048 Bytes groß ist. encrDecrData ist aber weder 2048 Bytes groß, noch ein geeigneter Zielpuffer, siehe oben.
-
Das kannst du so machen, musst du aber nicht. Es gibt bei Struktogrammen keine formalen Anforderungen an das, was du in die Kästchen schreibst. Es sollte verständlich sein, egal welche konkrete Programmiersprache man kennt (Pseudocode). Eine Typangabe (Int) ist nicht erforderlich. Nein. Nur wenn die Aufgabe das erfordert. Keine bestimmte Sprache, siehe oben. Welche?
-
Bruce Eckel's MindView, Inc: Thinking in C++ 2nd Edition by Bruce Eckel Wegen des Alters bleibt dort der neueste Standard (C++11) natürlich unberücksichtigt. Dafür umsonst Der C++-Primer soll auch gut sein. Lass die Finger von "A-Z" oder "in X Tagen".
-
Zunächst einmal gibt es kein C/C++. C und C++ mögen verwandte Sprachen sein, aber die Art und Weise der Problemlösung ist komplett unterschiedlich. Entscheide dich, ob du C oder C++ lernen willst. Ein Buch oder Tutorial, das vorgibt, beides zu leisten, lügt meiner Meinung nach
-
Sag uns einfach, welche Antwort du hören willst, damit das hier zu einem Ende kommt. Hier ist kein Kindergarten.
-
Auch ein paar Fragen zur Projektdokumentation
Klotzkopp antwortete auf Daimoch's Thema in Abschlussprojekte
Nein, übliches Problem: Der Prüfling weiß nicht, was Kosten sind. Wieso ist das ein Problem? Hast du die Testergebnisse nicht protokolliert? Hast du eine Testspezifikation? -
Der Beispielcode in der Anleitung ist doch Java :confused: Was ist denn noch unklar? Du kannst mit einem Struktogramm Sequenzen (Anweisungen hintereinander), Verzweigungen (if), Mehrfachverzweigungen (switch), Schleifen (for, do, while) und Aufrufen von Funktionen/Methoden abbilden. Alles andere (Klassen, Vererbung, Ausnahmen, Schnittstellen) ist damit nicht darstellbar. Du kannst also nicht ein komplettes Java-Programm als Struktogramm darstellen, bestenfalls den Inhalt einer einzelnen Methode.
-
BlueJ und groß passt nicht so recht zusammen. Das ist wie Hausbau mit Eimerchen und Schäufelchen. Was ist denn "recht groß", so in Codezeilen? Geht so. Du hast 10.000.000 Zeilen geschätzt, es waren aber wohl nur etwa 600.000. Jedenfalls ist das keine Datenmenge, mit der irgendeine Konsole irgendwelche Schwierigkeiten haben sollte. Das Problem liegt wohl in deinem Code.
-
Könntest du so eine Aufgabe in einer dir vertrauten Programmiersprache umsetzen? Könntest du ein Programm in einer dir vertrauten Programmiersprache in ein Struktogramm umsetzen?
-
Hast du Schwierigkeiten beim Erstellen eines Algorithmus oder beim Umsetzen eines gegebenen Algorithmus in ein Struktogramm?
-
GA2 So 2008 - Stundenrechnung
Klotzkopp antwortete auf Gurki's Thema in Prüfungsaufgaben und -lösungen
1,5 ist 60 zu 40. Wenn ein Vertriebsmitarbeiter x Stunden arbeitet, arbeitet ein EDV-Mitarbeiter x * 1,5 Stunden. -
Du meinst, mit den tatsächlichen Werten?
-
Deine Berechnung ist korrekt.
-
Lasten-/Pflichtenheft internes Projekt
Klotzkopp antwortete auf azubube's Thema in Abschlussprojekte
Und was spricht jetzt dagegen, das bei einem internen Projekt genauso zu machen? -
Lasten-/Pflichtenheft internes Projekt
Klotzkopp antwortete auf azubube's Thema in Abschlussprojekte
Wir würdest du es bei einem Kundenprojekt umsetzen?