Welche Programme?

12/14/2015 12:43 [M]assiv#1
Hallo,

da ich jetzt einige Wochen Urlaub habe möchte ich anfangen mir C beizubringen.
Habe auch ein Buch von meinem Vater bekommen zum lernen.
Mir ist bewusst das es lange dauern wird bis ich C verstanden habe.

Meine Frage ist nun welche Programme benötige ich für
-Code schreiben = Notepad++?
-Compiler= ?
-Linker= ?

Habe mir Visual Studio Express runtergeladen. Allerdings ist es für mich neu und muss mich damit beschäftigen. Gibt es vielleicht Anfängerfreundliche Tools dafür.

Hoffe ich könnt mir helfen.

Mfg
12/14/2015 13:27 IceTrailer#2
Zunächst sollte gesagt werden, dass wenn man programmieren selbst lernt (unabhängig von der Sprache), ist es kein so großes Problem sich in eine Sprache einzuarbeiten (hier C).

Ich würde dir empfehlen, mit C# einzusteigen, da die Syntax ähnlich ist und die Sprache selbst sehr einfach gestaltet ist, außerdem stammt die Sprache auch aus der C-Familie.

Einfache Tutorials dazu gibt es zahlreich auf YouTube.


Zur Entwicklungsumgebung:

Da du bereits VS Epxress hast, ist zum Code Schreiben Notepad++ o. Ä. nicht notwendig. Der Compiler und Linker ist da auch inbegriffen.
Wenn du dich in VS Express etwas rumklickst, lernst du schnell die wichtigsten Funktionen kennen.

Mach erstmal einen Schritt nach dem anderen. C ist ohne Programmierkenntnisse nicht nach einem Monat "gelernt".

Das wars von meiner Seite, ich hoffe doch, doch etwas beraten zu haben.
12/14/2015 14:06 algernong#3
Du koenntest dir auch ein Linux runterladen und dann mit irgendeinem Editor (z.B. Geany oder gedit) oder IDE (z.B. Clion) und GCC arbeiten.

Quote:
Ich würde dir empfehlen, mit C# einzusteigen, da die Syntax ähnlich ist und die Sprache selbst sehr einfach gestaltet ist, außerdem stammt die Sprache auch aus der C-Familie.
C# ist als Sprache doch viel komplexer als C (ohne C++)?!
12/14/2015 14:20 [M]assiv#4
Quote:
Originally Posted by algernong View Post
Du koenntest dir auch ein Linux runterladen und dann mit irgendeinem Editor (z.B. Geany oder gedit) oder IDE (z.B. Clion) und GCC arbeiten.


C# ist als Sprache doch viel komplexer als C (ohne C++)?!
Habe auch eine VirtualBox mit linux und den Tools drauf. Allerdings muss ich dann im Terminal per Linuxbefehle die Datein aufrufen und mit Linux habe ich auch 0 Erfahrung. Mein Vater hat mir das eingerichtet, da er selber mit Linux arbeitet.
12/14/2015 14:25 warfley#5
Quote:
Ich würde dir empfehlen, mit C# einzusteigen, da die Syntax ähnlich ist und die Sprache selbst sehr einfach gestaltet ist, außerdem stammt die Sprache auch aus der C-Familie.
C# und C haben in etwa nichts gemein außer der Syntax, und das auch nicht vollständig. Und die Syntax einer Sprache ist das einfachste zu lernen.

@Topic:
Ich würde GCC Verwenden, am besten unter einem Unix/Linux, aber es gibt auch einen Windows ableger mingw. Als Editor würde ich sogar zu einer einfachen IDE wie CodeBlocks greifen. Als linker würde ich den ld nehmen der mit dem GCC mitgeliefert wird.

Quote:
Mir ist bewusst das es lange dauern wird bis ich C verstanden habe.
Ich will dir deine Entscheidung nicht schlecht reden, aber C zu verstehen dauert nicht lange, und ist auch nicht ansatzweise das Problem von C. Das Problem ist das diese Sprache so komplett unintuitiv, und beschissen zu nutzen ist, das man schon bei den einfachsten Aufgaben am verzweifeln ist. Allein das String System von C war bereits veraltet als C raus kam, da andere Sprachen bereits schon deutlich bessere implementierungen hatten. C wurde geschaffen um ein Betriebsystem zu schreiben, so zu sagen als besseres Assembler, und daher ist diese Sprache teilweise sehr klobig.

Zur "Home-Entwicklung" sind andere Sprachen deutlich besser, ohne das du irgendwelche Abstriche machen musst.

Was ich damit sagen möchte ist, wenn du dir sicher bist dass du C lernen möchtest mache es ruhig, das C so klobig ist ist auch immer etwas challanging, und ich mag es selbst ab und an mal was in C zu schreiben, aber denk dran, für normales Home Programmieren ist eigentlich jede andere Sprache besser, da C nie darauf ausgelegt wurde.

Quote:
Habe auch eine VirtualBox mit linux und den Tools drauf. Allerdings muss ich dann im Terminal per Linuxbefehle die Datein aufrufen und mit Linux habe ich auch 0 Erfahrung. Mein Vater hat mir das eingerichtet, da er selber mit Linux arbeitet.
Die coreutils zu lernen ist nicht die Welt, vor allem wirst du schnell merken dass du eigentlich fast nur sudo (administative rechte), cd (Verzeichnis wechseln), ls (Dateien auflisten) und die Paketverwealtung (Ubuntu: apt-get) verwenden wirst
12/14/2015 21:34 .SkyneT.#6
Quote:
Originally Posted by [M]assiv View Post
Hallo,

da ich jetzt einige Wochen Urlaub habe möchte ich anfangen mir C beizubringen.
Habe auch ein Buch von meinem Vater bekommen zum lernen.
Mir ist bewusst das es lange dauern wird bis ich C verstanden habe.
Warum genau C?
(Ich stelle die Frage nur, weil C, wie bereits erwähnt nicht gerade die "beste" Sprache für, ich übernehme mal den Begriff, "Home-Entwicklung" ist.)
Quote:
Originally Posted by [M]assiv View Post
Meine Frage ist nun welche Programme benötige ich für
-Code schreiben = Notepad++?
-Compiler= ?
-Linker= ?
Notepad++ kann man lassen, hat auch einige sehr nützliche Autocomplete Optionen.
Als Compiler und Linker ist GCC zu empfehlen.
Wenn du C und den Kompiliervorgang verstehen willst würde ich am Anfang gar nicht erst zu einer IDE (z.b) Visual Studio greifen, sondern die ersten paar Programme komplett mit Kommandozeilen-Befehlen kompilieren.
(ist meiner meinung nach übrigens unter Linux viel angenehmer als unter Windows)
Quote:
Originally Posted by [M]assiv View Post
Habe mir Visual Studio Express runtergeladen. Allerdings ist es für mich neu und muss mich damit beschäftigen. Gibt es vielleicht Anfängerfreundliche Tools dafür.
Visual Studio ist imo bereits sehr Anfängerfreundlich, da es nach der Installation "einfach funktioniert". Natürlich bietet es aber alle nur erdenklichen Einstellungsmöglichkeiten :)
12/15/2015 09:30 [M]assiv#7
Quote:
Originally Posted by .SkyneT. View Post
Warum genau C?
(Ich stelle die Frage nur, weil C, wie bereits erwähnt nicht gerade die "beste" Sprache für, ich übernehme mal den Begriff, "Home-Entwicklung" ist.)

Habe gelesen das C am einfachsten ist wenn man mit Programmieren anfangen will.


Notepad++ kann man lassen, hat auch einige sehr nützliche Autocomplete Optionen.
Als Compiler und Linker ist GCC zu empfehlen.
Wenn du C und den Kompiliervorgang verstehen willst würde ich am Anfang gar nicht erst zu einer IDE (z.b) Visual Studio greifen, sondern die ersten paar Programme komplett mit Kommandozeilen-Befehlen kompilieren.
(ist meiner meinung nach übrigens unter Linux viel angenehmer als unter Windows)

Visual Studio ist imo bereits sehr Anfängerfreundlich, da es nach der Installation "einfach funktioniert". Natürlich bietet es aber alle nur erdenklichen Einstellungsmöglichkeiten :)
Ok. Werde mich da ein bisschen einfuchsen.
12/17/2015 11:04 MrSm!th#8
Quote:
Originally Posted by algernong View Post
C# ist als Sprache doch viel komplexer als C (ohne C++)?!
C# liegt auf einem höheren Abstraktionsniveau und bietet dir sowohl syntaxmäßig als auch durch das .NET Framework mehr Möglichkeiten, mit relativ wenig Zeilen das auszudrücken, was du machen willst. Das heißt, dass die Sprache umfangreicher und sogesehen komplexer ist, ja. Aber wenn man die Sprache nicht nur lernen will, damit man sie gelernt hat, sondern auch tatsächlich etwas damit anstellen will, sieht es wieder ganz anders aus. Schon bei relativ kleinen Aufgaben wird der Vergleich C vs. C# schnell wie der Vergleich Fußgänger vs. Auto. Ja, Laufen ist schneller gelernt, aber du bist um Welten langsamer, wenn du zu Fuß 20km gehen willst, statt einfach Auto zu fahren. Wie warfley bereits sagte, selbst das Arbeiten mit Zeichenketten ist schon ein Krampf, wenn man es mit C# vergleicht und viel kleiner wäre echt nur noch ein Hello World (welches in beiden Sprachen ca. gleich komplex ist). Mal ganz davon abgesehen, dass C bei typischen Anfängerfehlern deutlich weniger verzeiht als C#.

C lernt man, wenn man den konkreten Bedarf hat (man will ein Betriebssystem, Microcontroller, Treiber schreiben oder sich an Projekten beteiligen, die bereits C nutzen) oder weil es einen einfach interessiert. Es bringt einem definitiv auch näher, wie der Computer auf einer der untersten Schichten überhaupt funktioniert und so ein Wissen ist nie verkehrt. Aber damit muss man nicht unbedingt anfangen, wenn man einfach nur mal ins Programmieren schnuppern will.
12/23/2015 20:04 Psychosadistic#9
Bezüglich der verwendbaren IDEs finde ich ja CLion von JetBrains sehr geil - JetBrains-IDEs allgemein. Zusätzlich benötigst du dann noch MinGW oder Cygwin.

[Only registered and activated users can see links. Click Here To Register...]

Wenn's um die Aktivierung geht - einige Programme gibt es als Community Edition (demnach kostenfrei) - andere (wie CLion) eben nicht, da kann man dann als License Server bspw.
Code:
http://idea.lanyus.com
reinschreiben.

Falls du mal VS2010, VS2012, VS2013 oder VS2015 nutzt (nicht Express - Community weiß ich nicht), gibt's von JetBrains auch ReSharper - Aktivierung s. o.

[...]

Ich selbst habe mich nicht mit C auseinandergesetzt, jedoch in letzter Zeit wieder C++ angefangen - davor hatte ich eine Menge mit Java zu tun. Syntax ähnlich - jedoch gibt's so einige abstrakte Sachen in C++ :P Mit Zeigern und Referenzen wird's lustig...

Hast du denn bereits andere Programmiersprachen oder Skriptsprachen (kennen-)gelernt? Falls nein, wäre Java (oder wie bereits erwähnt C#) auch ein recht angenehmer Einstieg, finde ich jedenfalls - also, wenn's nicht zwingend C sein muss.
Python ist auch ganz lustig. :D

[...]

Bei Editoren empfehle ich als Alternative Atom sowie Sublime Text.

Viel Glück und Spaß im Übrigen. :)

Quote:
Originally Posted by MrSm!th View Post
[...] Es bringt einem definitiv auch näher, wie der Computer auf einer der untersten Schichten überhaupt funktioniert und so ein Wissen ist nie verkehrt. Aber damit muss man nicht unbedingt anfangen, wenn man einfach nur mal ins Programmieren schnuppern will.
[...]
Oder gleich mit Assembler anfangen (lassen). :)