Programmieren, aber womit?

Man kann keine Variable in einem for-Statement deklarieren.
Das ist kein C und kein C++. Der Compiler muss es abweisen.

€: Und wer's mir nicht glaubt, soll das mal nem anderen Compiler geben.
 
asdfman schrieb:
Man kann keine Variable in einem for-Statement deklarieren.
Das ist kein C und kein C++. Der Compiler muss es abweisen.

€: Und wer's mir nicht glaubt, soll das mal nem anderen Compiler geben.

mal davon abgesehen, dass das quatsch ist: Was hat das mit irgendeiner bisher hier im thread getroffenen aussage zu tun?
davon abgesehen frisst das sowohl der gcc als auch der intel compieler. warum auch nicht:
varaiblen deklarationen in der for-schleifen definition ist C99 standard! laut standard darf sie dann aber nur innerhalb des for-blocks gültig sein.

p.p.s. bitte das nächste mal sagen,w as man will und nicht nur irgendeinen fetzen hinwerfen. keiner weiß, was in deinem kopf sos sonst noch dazu rumschwirrt und den fetzen erklärt. :rolleyes:
 
Also wenn ich mich jetzt nicht komplett täusche und wir auch beide von der selben sprache reden, dann ist es sehr wohl möglich, ja sogar üblich, die variablen in einer for schleife zu deklarieren.

Übrigens, lässt auch der dev-c++ compiler den code ohne fehler oder warnung compilieren!

Gruß
Blackmark
 
@blackmark:
wie ich schon vor dir schrieb, das ist C99 standard. das MUSS sogar jeder vernünftige c/c++ compiler schlucken!
und wenn asdfman aus seinen posts keine schnitzeljagt gemacht hätte, hätte man dies schon viel früher und mit weniger spam klären können.
 
ja, ich habe den C99 standard leider nicht auswendig im kopf, ansonsten bin ich völlig deiner Meinung.

Gruß
BlackMark
 
ich auch nicht, aber nachschauen hilft :P
ich würd mir auch um meinen geisteszustand sorgen machen, wenn cih den c99 stadnard asuwenig wüßte :D
 
Meines Wissens implementiert MS C99 überhaupt nicht. Mir könnte ja mal jemand den Gefallen
tun, und gucken, was deren Compiler an C99 Features unterstützt, die nicht von C++ abgeschrieben
wurden. Haben die einen complex datentyp bspw.? Gibt es stdbool.h, inttypes.h oder tgmath.h?
 
du hast insofern recht, als dass sich der ms compieler glaub an keinen standard wirklich hält. ähnlich wie der ie frißt auch der compiler fast alles (ob er das dabei richtig macht oder nicht ist ne andere frage).

aber das ist ansich auch nicht so tragisch. viel problematischer sind die ganzen ms eigenen rweiterungen, in die man verführt wird, wenn man VC++ und besonders MFT und die MSDN-Dokus nutzt. hierbei strikt auf ms-eigenkreationen zu verzichten erhöht die portabilität (und meist auch die performance sowhl des programms als auch des entwicklers) erheblich.

sogar meine ie-plugins/bho die ich entwickelt habe sind portierbar, wenn man mal den ie-spezifischen teil beiseite läßt ;)
 
Naju, GCC hat auch seine Erweiterungen, die nicht portabel sind. Da nehmen die sich nicht viel.
Ich würd einfach standardkonformen Kram schreiben, dann geht das auch mit beiden. Wenn man
aber aus Versehen vom Standard abweicht, kann man bei MS leicht in die Scheiße treten.
 
welche denn? es gibt zwar nicht ansi konforme dinge beim gcc, aber mir würde nichts einfallen, was der portabilität auf irgendeiner plattform in wege stehen würde.

der ms-compiler und der gcc nehmen sich da sehr wohl ne ganze menge!
und so einfach standard konformes zeug schreiben, bei einem compieler der alles still schluckt ist leider nicht ganz so einfach, da kaum einer bock hat sich den standard auswendig einzuprägen.
 
hehe, ja portabilität auf plattformen ist natürlich schon wegen der verfügbarkeit des gcc einfach. aber darauf wollt ich mich nicht beziehen.

ich hab bisher keine probleme gehabt gcc code auf anderen compilern zzu übersetzen gehabt.

aber danke für den link. nur wenn cih mir das so anschaue, dann ist das ansich nicht gerade viel, vorallem nur wenig, was in der praxis so verwendung findet und einer portabilität zu anderen compielern erschwert. besonders die liste zu c++ ist da, sagen wir, sehr überscihtlich ;)

aber wie ich schon sagte, die erweiterungen der syntax selbst sind meist nicht das problem und auch nicht die "verbotenen" erweiterung die ich meinte, sondern erweiterungen durch plattform spezifische funktionen/klassen wie z.b. microsofts BOOL und andere datentypen. auch MS-wchar handling ist da oft ein problem. es gibt generell sehr viele ms-typische funktionen und funktionserweiterungen.

sowas stellt da eher das problem und nicht die syntax und semantik erweiterungen der compiler selbst.
 
Ich erlaube mir mal wieder aufs Thema zurück zu kommen: ;)
Da du mit C++ schon ein "unmanaged" Sprache beherrscht, könntest du mal eine "managed" Sprache wie C# oder Java ausprobieren. Beide sind vom Syntax an die "C-Sprachen" (C, C++) angelehnt, der Umstieg dürfte also nicht all zu schwer fallen.
Ich persönlich würde dir zu C# raten, da zwischen zwei Technologien für die GUI-Programmierung wählen kannst: Windows Forms und WPF. Speziell mit WPF hat man unglaublich viele Möglichkeiten. Einfach mal Google fragen.
 
TheCadillacMan schrieb:
Ich erlaube mir mal wieder aufs Thema zurück zu kommen: ;)
Da du mit C++ schon ein "unmanaged" Sprache beherrscht, könntest du mal eine "managed" Sprache wie C# oder Java ausprobieren. Beide sind vom Syntax an die "C-Sprachen" (C, C++) angelehnt, der Umstieg dürfte also nicht all zu schwer fallen.
Ich persönlich würde dir zu C# raten, da zwischen zwei Technologien für die GUI-Programmierung wählen kannst: Windows Forms und WPF. Speziell mit WPF hat man unglaublich viele Möglichkeiten. Einfach mal Google fragen.
Auch Java bietet mehrere Möglichkeiten für GUI-Programmierung. Einmal Swing, was direkt im JDK enthalten ist. Die andere Variante ist SWT. Der Nachteil von SWT ist allerdings, dass man betriebssystemabhängige Bibliotheken mitliefern muss, damit die Anwendung funktioniert.
 
Da habe ich ja teils heisse Diskussionen entfacht, das war ausnahmsweise mal garnicht meine Absicht ;)

Jedenfalls habe ich mir kurzerhand mal Microsoft Visual Studio Express heruntergeladen und installiere gerade die C++ Variante. Warum? Ich beherrsche C(++) nicht - ich kann es "ein wenig" (aber das ausm Stehgreif *g*). Leider, wie bereits gesagt, nur im Dos-Bereich. Grundlegendes zu sämtlichen Schleifenfunktionen sowie Arrays und Pointern ist vorhanden.

Daher halte ich es für sinnvoll, wenn ich vielleicht erst einmal mit einer grafisch gescheiten Oberfläche dort ansetze, wo ich zur Zeit stehe und setze mir erst einmal kleine Ziele. C# werde ich mir jedenfalls mal genauer anschauen, wenn ich meine bisherigen Fähigkeiten erweitert habe. Was die Windows-Programmierung angeht, so muss das wohl wirklich sehr anwenderfreundlich aufgebaut sein.

Ich bin jedenfalls schwer überrascht, dass Microsoft die Express-Suite umsonst (nach Registrierung) zur Verfügung stellt, das wusste ich nicht :) Ich danke für diesen klasse Tipp!

Achja, zum Thema auf der ersten Seite, ob es nun legitim ist, Variablen innerhalb (for-)Schleifen zu definieren oder nicht. Ich habe es auch so gelernt und oft in DevC++ angewendet, jedoch gab auch mir mein "Mentor" damals die Vorgabe, die Variablen niemals über die Schleifen hinaus zu verwenden.

Cya, Mäxl
 
Falls es dich jemals in Richtung Java verschlägt: NetBeans

Unterstützt natürlich auch die ganze Bandbreite an anderen Sprachen, aber Java ist die Paradedisziplin (inkl. des wohl besten GUI Builders für Java).
 
mASSIVe schrieb:
Falls es dich jemals in Richtung Java verschlägt: NetBeans

Unterstützt natürlich auch die ganze Bandbreite an anderen Sprachen, aber Java ist die Paradedisziplin (inkl. des wohl besten GUI Builders für Java).
Selbst als Eclipse-Nutzer muss ich in diesem Punkt zustimmen.

Wenn es um GUI-Entwicklung geht, ist NetBeans der Eclipse deutlich überlegen. Es gibt zwar auch GUI-Builder für die Eclipse, aber die sind entweder nicht besonders gut oder kostenpflichtig.
Zum Beispiel gibt es das (kostenpflichtige) MyEclipse, in dem der GUI-Builder von NetBeans nach Eclipse portiert wurde.
 
Wie die anderen schon gesagt haben Visual Studio 2008 Express:

http://www.microsoft.com/germany/Express/

Der einzige Nachteil ist, dass du für jede Sprache nen eigenen compiler brauchst.

Vorteile sind Deutsche Sprache und Benutzerfreundlichkeit dazu noch die gute Online Datenbank:

msdn.microsoft.com
 
Zurück
Oben