Pelles C Anfängertauglich?

05/07/2009 - 16:25 von Frank Senator | Report spam
Hallo

Als C-Einsteiger möchte ich euch fragen, ist PellesC als IDE für
Einsteiger in die C Programmierung zu empfehlen?

Möchte erstmal nur (ISO) C Programme für die Konsole und erst spàter
für Windows programmieren.

Alternativ gefàllt mir DEV-C++ auch ganz gut.
Vielleicht könnt ihr euch über PRO + KONTRA àußern?!

Vielen Dank

Frank
 

Lesen sie die antworten

#1 Markus Wichmann
05/07/2009 - 20:21 | Warnen spam
Frank Senator wrote:
Hallo

Als C-Einsteiger möchte ich euch fragen, ist PellesC als IDE für
Einsteiger in die C Programmierung zu empfehlen?

Möchte erstmal nur (ISO) C Programme für die Konsole und erst spàter
für Windows programmieren.

Alternativ gefàllt mir DEV-C++ auch ganz gut.
Vielleicht könnt ihr euch über PRO + KONTRA àußern?!

Vielen Dank

Frank





Naja, also... ich hab was gegen IDEs. Die machen mir immer Automatismen
an stellen hin, wo ich sie nicht bràuchte, und da, wo ich sie bràuchte,
muss ich gucken, wo ich bleibe.

Zum Bleistift sind viele "Beispiele" für C-Anfànger mit dem Makel
behaftet, dass sie die IDE im Hintergrund halten wollen, bevor sich die
Konsole wieder schließt. So sieht ein hàufig gesehenes _Nicht-_ (!!)
ISO-C-Hello-World so aus:

#include <stdio.h>
#include <conio.h> //Kein ISO-C-Header!!

int main()
{
printf("Hello World!");
getch();
return 0;
}

Da wurde fast alles falsch gemacht, was falsch zu machen war: Zum einen
schließt die Ausgabe nicht mit einem "" ab, was lediglich unter
Windows nicht zu einem dummen Ergebnis führt. Auf allen anderen
Betriebssystemen wird nàmlich nicht automatisch ein "" ausgegeben,
wenn das Programm beendet wird.

Das andere ist natürlich conio.h und getch(). Das "Problem", das die
beiden lösen sollen ist folgendes: Unter Windows làuft das Programm an,
was ein Konsolenfenster öffnet, dann wird "Hello World!" ausgegeben und
ohne das getch() wàre dann Schluss, weswegen sich das Konsolenfenster
wieder schließt. Zeit zwischen Öffnen und Schließen des Fensters: Circa
eine Mikrosekunde. Deswegen denken viele Newbies, sie hàtten etwas
falsch gemacht. Also packt man noch irgend eine Eingabe rein. Aber die
Notwendigkeit, auf Enter drücken zu müssen, ist ja nicht so toll, also
nimmt man die unportable Funktion getch(), die bei jedem Tastendruck
zurückkehrt.

Das ist aber Blödsinn: Will man die Wirkung des Programms sehen, so
kompiliert man das Programm in der IDE und geht dann mit der Konsole
hin, um nachzusehen, was das Programm tut. Es gibt da viele
Möglichkeiten. Man kann auch unter Windows festlegen, dass sich
Konsolenfenster erst mit dem Schließen-Button des Fenstermanagers zu
schließen haben, nicht mit Ende des Programms.

Ansonsten sind IDEs meines Wissens nach aufgeblàhte Editoren mit einem
angehàngten Compiler. Ich benutze ViM, einen Editor, mit vielem
Schnickschnack, zum Bleistift Syntax Highlighting, Verstàndnis von
Compiler-Errors, Support _vieler_ Compiler,...

Das bedeutet, dass ich ViM für jede Programmier- und Markupsprache
verwenden kann, die ich will. Mein C-Compiler ist notgedrungen der Gnu C
Compiler (ohne kommt man bei Linux nicht weit, wenn man systemspezifisch
wird) und als Build-System GNU Make (IMHO geniale Idee). Ich nehme aber
nicht alles von GNU: Mein Pascal-Compiler ist FreePascal und mein
Assembler NASM.

Und für "spàter" noch ein Hinweis: Bibliotheken wie GTK und Qt
existieren, und dafür gibt es auch Gründe: Zum einen ist das Win-API
IMHO grausig, zum anderen gibt es für die genannten Bibliotheken
Editoren, mit denen man ein GUI wesentlich leichter erstellen kann als
mit dem reinen Win-API. Und außerdem sind sie portabel.

Fazit: Mit einem reinen Programmierer-Editor wie Notepad++ oder ViM oder
Emacs fàhrt man IMHO wesentlich besser als mit jedweder IDE.

Tschö,
Markus
GUI - ein Hintergrundbild und zwölf XTerms

vim -c "exec \"norm iwHFG#NABGURE#IVZ#UNPXRE\"|%s/#/ /g|norm g??g~~"

Ähnliche fragen