|
|
|
|
Gute Entwicklungsumgebung für C++ |
Zirias
BlackBoarder
Dabei seit: 11.09.2002
Beiträge: 1.217
Herkunft: /dev/urandom
|
|
Portable Executable? Hmmm der Name ist ja geil
Zum Thema: An IDEs fällt mir grad nur kdevelop ein, speziell für KDE-Programme ... bäh ...
Nimm lieber einfach n guten editor mit makros für gcc, je nach Geschmack entweder emacs oder vim (ich bevorzuge letzteren).
Greets, Ziri
PS: Blackstar, mit Hilfe von MinGW oder Cygwin lässt sich noch um einiges mehr portieren
__________________ palmen-it.de
GCS/MU d+(++) s+: a C++ UL++++ P+++$ L+++ !E W+++ N+ o? K? w++$ !O M-- V?
PS+ PE++ Y+ PGP++ t !5 X- R- tv b+ DI++ D+ G e++ h r y+
|
|
19.02.2003 10:36 |
|
|
-=ThE_pLaKe=-
Aufsteiger
Dabei seit: 17.02.2003
Beiträge: 48
Themenstarter
|
|
ich mein wenn ich unter visual c++ einen Virus schreibe (natürlich nur für einen freund
) kann ich den doch vom notebook wo linux drauf is abschicken bzw. ins netz setzen, oda? (sache der anonymität *g*)
Hope you Help
|
|
19.02.2003 13:31 |
|
|
Rabenicht
Aufsteiger
Dabei seit: 18.01.2003
Beiträge: 84
Herkunft: Fehler in Zeile 23
|
|
Bitte nimm das jetzt nicht persönlich oder mir übel: aber Deine 2. Frage klingt so, als hättest Du nicht sonderlich viel Ahnung vom Programmieren, oder?
Hast Du überhaupt schon einmal ein größeres Programm geschrieben? Falls nicht, solltest Du Dich vielleicht erst einmal mit den Grundlagen zur Windows/Linux-Programmierung in C/C++ befassen und dann lernen, lernen, lernen... Und wenn Du es DANN noch für nötig hälst, kannst Du gerne auch einen Virus schreiben.
__________________ java.sql.SQLException: [Micro$oft][ODBC Micro$oft Access Driver] Data type mismatch in criteria expression or general fuck off.
|
|
19.02.2003 13:41 |
|
|
-=ThE_pLaKe=-
Aufsteiger
Dabei seit: 17.02.2003
Beiträge: 48
Themenstarter
|
|
jo hast ja recht des wegen frag ich ja
ich weiß das es sehr viel zeit brauch um etwas vernünftiges auf die beine zu bringen. (hab auch noch nichts größeres geschrieben, sollte halt nur ne theoretische frage sein)..
aber kannst mir vielleicht doch meine frage beantworten plz? (freue mich immer über verbesserungsvorschlage//// thxxxx schon mal im voraus)
Hope you help again
|
|
19.02.2003 16:08 |
|
|
Rabenicht
Aufsteiger
Dabei seit: 18.01.2003
Beiträge: 84
Herkunft: Fehler in Zeile 23
|
|
Ich habe bislang noch keinen Virus programmiert und auch nicht vor, damit anzufangen.
Meiner Einschätzung nach ist ein Virus jedoch extrem betriebssystembhängig, da er ja über Funktionen verfügen soll/muß, wie z.B. sich an ausführbare Dateien anzuhängen, eine Internetverbindung aufzubauen oder Ähnliches. Möglicherweise soll er auch gezielt Sicherheitslücken im System ausnutzen. Daher macht es - zumindest in meinen Augen - keinen Sinn, einen Virus auf zwei Betriebssystemen gleichzeitig zu erstellen.
Den erstellten Quelltext kannst Du natürlich auf jedem System lesen. Doch wie Compuholic und Blackstar schon andeuteten: Kompilieren kannst Du in wahrscheinlich nur auf dem System, für den er geschrieben ist.
Wenn Du z.B. ein Programm mit der Umgebung Visual C++ schreibst, die, da sie von Microsoft ist, natürlich nur unter Windows lauffähig ist, dann schreibst Du es wahrscheinlich unter Benutzung der Windows-API oder gar der Microsoft-Foundation-Classes. Beides gibt es unter Linux/Unix nicht. Also bringt Dir solcher Quelltext auch nur unter Windows etwas.
Ein für Windows kompiliertes Programm kannst Du auf Linux nicht ausführen (höchstens mit Wine oder Ähnlichem, sogenannten Windows-Emulatoren) aber ansonsten kannst Du natürlich mit der exe-Datei auch unter Linux tun und lassen was Du willst. Also z.B. auch übers Internet versenden.
Meine Empfehlung: Entscheide Dich, ob Du vorrangig unter Windows oder Linux arbeiten und programmieren möchtest. Und dann bleibe vorerst auf diesem System. Versuche hier etwas Sinnvolles zu machen.
Falls Du unter Windows bleiben willst:
Ich benutze hier die kostenlose Entwicklungsumgebung DevC++. Kauf Dir ein gutes Buch über C++ oder gleich C++ unter Windows. Lerne wie Du die WindowsAPI benutzt oder mit Visual C++ schnell Programme mit ansprechender Oberfläche erstellst.
Aber schlag es Dir auf jeden Fall aus dem Kopf, gleich mit der Virusprogrammierung anzufangen. Überlasse das besser gelangweilten Profis.
__________________ java.sql.SQLException: [Micro$oft][ODBC Micro$oft Access Driver] Data type mismatch in criteria expression or general fuck off.
|
|
19.02.2003 16:34 |
|
|
-=ThE_pLaKe=-
Aufsteiger
Dabei seit: 17.02.2003
Beiträge: 48
Themenstarter
|
|
Jetzt hab ich mir ein Buch gekauft über c++, kann schon die grundsachen in c++; warum sollte ich mit c anfangen?, ( ich find c++ is keine schwere sprache)!
Und wenn's mich interresiert warum also net?
|
|
22.02.2003 02:28 |
|
|
Zmaster
Junior Member
Dabei seit: 15.02.2003
Beiträge: 133
|
|
java |
|
Einen Virus habe ich nicht programmiert (nur einen Spaßvirus, der vorgibt Dateien zu löschen) und habe es auch nicht vor.
Aber wenn du unbedingt ein Betriebsunabhängiges Programm schreiben willst, dann empfehle ich dir ganz stark Java !
Es läuft auf jeden OS, solange es die VM hat.
Großartig unterscheidet sich Java auch nicht von C++.
Gruß
zmaster
|
|
22.02.2003 12:01 |
|
|
Zirias
BlackBoarder
Dabei seit: 11.09.2002
Beiträge: 1.217
Herkunft: /dev/urandom
|
|
Das ist leider der einzige Vorteil von Java. Ansonsten taugt es allenfalls noch zum lernen. Java ist nunmal leider lahm, die GUI-Toolkits sind hässlich, die Verwendung von Pointern und Variablen stark eingeschränkt (eben idiotensicher, aber dadurch fehlt eine Menge Flexibilität) ...
Mit C deshalb anfangen, weil C die Grundlage ist, eibne zuweisungsoritentierte Programmiersprache. C++ ist eine Erweiterung von C um Objektorierntierung. Um Objektorierntierung zu verstehen muss man sowieso erstmal das zuweisungsorientierte Konzept verstanden haben. Natürlich kann man auch in C++ rein zuweisungsorientiert programmieren (was auch viele Anfänger tun), aber das ist ein gewisser Overhead, solche kleinen Programme werden in C oft etwas effizienter, zum Beispiel, weil man garnicht erst in die Versuchung kommt, Streams wie "cout" zu benutzen wenns auch ein einfaches printf() tut
Greets, Ziri
__________________ palmen-it.de
GCS/MU d+(++) s+: a C++ UL++++ P+++$ L+++ !E W+++ N+ o? K? w++$ !O M-- V?
PS+ PE++ Y+ PGP++ t !5 X- R- tv b+ DI++ D+ G e++ h r y+
|
|
22.02.2003 12:09 |
|
|
Compuholic
knows where he wants to go tomorrow
Dabei seit: 19.10.2002
Beiträge: 819
Herkunft: München
|
|
[offtopic]
@CDW:
Es gab mal einen Wurm, der (nahezu) OS-unabhängig war. Der Name ist mir leider entfallen. Auf jeden Fall nutzte er eine Sicherheitslücke in irgendeinem Server aus, schleuste seinen Quellcode ins System, kompilierte sich selbst und führte sich selbst aus.
Auf jeden Fall fand ich die Idee schon genial. Klar: 100% unabhängig ist der Wurm damit auch nicht aber trotzdem. Der Programmierer hat saubere Arbeit abgeliefert *g*
|
|
22.02.2003 12:11 |
|
|
CDW
eine Simulation
Dabei seit: 12.10.2002
Beiträge: 1.329
Herkunft: CreateRemoteThread
|
|
offtopic:
@Compuolic: war das nicht so ein SQL Wurm, der sich dann massenweise per UDP weiterverschickte(ich glaub,das stand in der c't) auf jedenfall war die Idee genial - er nutze,wenn dann die APIs des Servers aus und war folglich quasi komplett OS unabnhängig
Damit es nicht ganz offtopic wird:
Zitat: |
Jetzt hab ich mir ein Buch gekauft über c++, kann schon die grundsachen in c++; warum sollte ich mit c anfangen?, ( ich find c++ is keine schwere sprache)!
Und wenn's mich interresiert warum also net?
|
Ja, warum nicht... ich fand c++ auch nicht schwer,als ich mir das zum ersten mal angeschaut hab - sogar leichter als C. Und ein bisschen Programme zusammenschustern ging dann auch immer.Aber richtig ein Problem zu lösen war nicht drin - so liegen meine 2 C++ bücher einfach im Regal rum.Meiner Meinung nach ist C schon ein bisschen hart an der Grenze mit den vielen Ausnahmen (z.B bei übergaben von Parametern - man denke nur an Arrays). Aber C++ ist der Overhead schlechthin.Naja, richtig Programmieren kann ich wohl nur in Pascal
- aber trotzdem, ich würde sogar gerne vorschlagen, dass wir ein und dieselbe Aufgabe in unseren Favoritsprachen lösen(auch wenn es schon wegen verschiedener Compiler nicht gut verglecihbar ist) und dann die Schnelligkeit und die Codegröße vergleichen.
|
|
22.02.2003 13:56 |
|
|
Zmaster
Junior Member
Dabei seit: 15.02.2003
Beiträge: 133
|
|
kleine aufgabe? |
|
Ich hätte ne coole Aufgabe für euch.
Ich habe damals das Programm in VBasic geschrieben, aber in Java werde ich das bestimmt auch noch schaffen.
Also folgendes Problem: "Ich-mal-das-Haus-vom-Ni-co-laus-und-neben-an-vom-Weih-nachts-mann".
Hört sich jetzt ein bisschen billig an, ist es aber nicht!
Es ist zu überprüfen, ob das Haus vom Weihnachtsmann zu zeichnen geht (ohne doppelt Linie zeichnen).
Ihr werdet bestimmt bald rausbekommen, dass es nicht geht, aber schreibt mal ein Programm, dass alle Möglichkeiten durchgeht und sagt, ob es erfolgreich war, oder nicht.
Um zu testen, ob der Code sauber arbeitet, könnt ihr sogar mal die Möglichkeiten zählen lassen, die es gibt, um das Haus vom Nicolaus zu zeichnen!
Gruß
zmaster
|
|
22.02.2003 18:01 |
|
|
CDW
eine Simulation
Dabei seit: 12.10.2002
Beiträge: 1.329
Herkunft: CreateRemoteThread
|
|
ich meinte eher richtung berechnen
-außerdem, verstehe ich nicht, was du genau meinst - denn es ist möglich, das Haus zu zeichnen... (ich könnte die Möglichkeiten berechnen lassen, aber Zeichnen in Pascal oder WinAPI - bitte nicht *g*)
|
|
22.02.2003 18:14 |
|
|
Zmaster
Junior Member
Dabei seit: 15.02.2003
Beiträge: 133
|
|
zeichnen |
|
Wer redet denn von Zeichnen?
Ich will nicht, dass es gezeichnet wird, sondern ein Algorithmus entwickelt wird, mit dem man Knotenprobleme lösen kann.
"Das Haus vom Nicolaus" ist zeichenbar. Ohne Frage!
Aber das Hause nebenan nicht!!! Schließlich fehlt da eine Linie, und zwar die Begrenzungslinie zwischen den beiden, bzw. man darf sie nur einmal zeichnen (oder auch "entlang gehen").
Wenn du das so einfach ist, dann sag doch mal wie viele Möglichkeiten es gibt!
gruß
zmaster
|
|
22.02.2003 20:17 |
|
|
CDW
eine Simulation
Dabei seit: 12.10.2002
Beiträge: 1.329
Herkunft: CreateRemoteThread
|
|
ahcso, du meinst also nicht so:
code: |
1:
2:
3:
4:
5:
6:
7:
8:
|
^ ^
| |__| |
sonden sowas:
^ ^
| | |
|
|
und dann so was in der art
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
|
Knoten1
Knoten2 Knoten3
Knoten4 Knoten5
|
|
dabei kann Knoten 1 mit Kn2 und Kn3 verbunden werden
3 mit 2, 4 und 5 usw. ?
dabei kann die Verbindung nur "nacheinander" erfolgen...
Naja, ich kann schon jetzt sagen, dass es am bewuemsten durch rekursion zu lösen ist
.
|
|
23.02.2003 13:05 |
|
|
Zmaster
Junior Member
Dabei seit: 15.02.2003
Beiträge: 133
|
|
knotenprobleme |
|
Mit dem Haus vom Weihnachtsmann meinte ich deine zweite Variante.
Ich habe auch rausgefunden, wenn man beim Haus vom Nicolaus im Knoten 2 oder 3 ankommen würde, dann könnte man das Haus nebenan zeichnen.
Aber leider kommt man da nicht an!
Man kommt immer in Knoten 4 oder 5 an. Man muss auch bei einem von den beiden Knoten anfangen, damit das überhaupt funktioniert.
Ich habe mal ein Bild hochgeladen, was die Linien zeigt.
Meine Lösung ist übrigens rekursiv. Ist für mich auch die einzige logische Variante gewesen. Weil es ja mehrere Möglichkeiten gibt, wenn ich im Knoten 2 bin. Entweder ich gehe zu 1,3,4 oder zu 5.
zmaster
Dateianhang: |
nico.gif (1,36 KB, 21 mal heruntergeladen)
|
|
|
23.02.2003 14:48 |
|
|
|
|
|
|