• Was: Wir sind eine heterogene Gruppe die sich das Ziel gesetzt hat C zu lernen
  • Wann: Alle 2 Wochen um 19:00 Uhr. Für genaue Termine siehe unten (Anwesenheit). Termine werden in der Talk-Mailing Liste angekündigt.
  • Wo: Schleißheimer Strasse ++41, München
  • Wer: Mitmachen darf jeder: neue Gesichter, auch non-CCC-members, sind gerne willkommen!
  • Kontakt: Siehe: irc
  • Kosten: Alles gratis
  • Weitere Infos: Fragen&Antworten und Offene Fragen

… stay tuned!

16.05.14 19:00
Dr.Elch
Joon
Nastia
Alex

Alte Termine

10.01.14 19:00 24.01.14 19:00 07.02.14 19:00 21.02.14 19:00 07.03.14 19:00 21.03.14 19:00 04.04.14 19:00
Joon Joon Joon Joon Joon Joon Joon
Richard Richard Richa Peete
n_to n_to Ausgefallen!
accxev (nicht ganz sicher)
Dr.Elch Dr.Elch Dr.Elch Dr.Elch Dr.Elch Dr.Elch
Nastia Nastia Nastia Nastia Nastia Nastia
Lukas (l. verhindert) Lukas (evtl.)
Uwe (nicht ganz sicher) Uwe (nicht ganz sicher)
Martina (nicht ganz sicher)
elian elian elian
Alex (non-CCC-member)

Netzwerkprogrammierung
Spiel programmieren?
gui

Wer Fragen hat hier stellen

  • Wie oft trefft ihr euch?
    • Wir versuchen es alle 2 Wochen zu machen
  • Was ist die Zielgruppe?
    • Dieser Workshop richtet sich an $noobs. Ob totaler Noob oder nur Semi-Noob etc. Noob = Anfänger. Es richtet sich nicht an Kernel-Hacker, Treiber Programmierer, oder Grafik-Zauberer.
  • Welche Voraussetzungen sollte man mit bringen (Wissen und Technik)?
    • Keine. Laptop mitzuhaben ist vielleicht ganz sinnvoll. Da der Workshop auf die vorigen Workshops aufbaut, können wir leider nicht immer bei 0 beginnen. Aber es wird jedes Mal eine Zusammenfassung der Themen hier im Wiki erstellt. So kann man sich vorbereiten
  • Wer moderiert das ganze (wird es moderiert)?
    • Erstmal Int80. Aber wir können gerne das mal rotieren lassen. Dr. Elch moderiert auch manchmal 😉
  • Nur für CCC-Members?
    • Nein. Für alle!
  • Wo findet das Treffen statt?
    • Im Club. Schleißheimer Str. ++41 (München)

* Ideensammlung: Welches Spiel möchten wir Programmieren?
* Einigung auf ein Spiel
* Analyse der Spielregeln und des Spiels ansich
* Erstellung einer kleinen Architektur für das Spiel
* Identifizierung welche C-Techniken wir noch benötigen für die Umsetzung
* Let's code! 🙂

  • Buffer Overflow
  • Reverse Engineering
  • Einführung Pointers
    • Adressierung vs. Referenzierung
    • Beispiel für Pointer - Wozu eigentlich?
    • Pointers vs. Arrays
    • Malloc und Free
    • Übungen

Übungen:
http://ideone.com/Zzjcf9

http://ideone.com/SXULSl

http://ideone.com/N5fUBy

http://ideone.com/ko3ViX

Themen:

  • Wiederholung Funktionen, Kontrollstrukturen, Datentypen
  • Arrays
    • Einführung zum Thema Arrays
    • Zugriffe
    • Indexierung
    • sizeof Operator
    • Übungen

Source-Code:

Themen:

  • Funktionen
    • Was sind Funktionen
    • Wie werden Funktionen verwendet
    • Nützliche Details zu Funktionen
  • Getränkeautomat wird erweitert
  • Rekursion

Source-Code:

C-Howto Sektion:

Themen:

Themen:
- Hello World
- Datentypen
- Speicherverwaltung
- Kernel
- Parameter
- Funktionen
- Was ist C?
- Deklaration
- Bits und Bytes
- Variablen

  • (Dr.Elch) Können wir für das zweite Treffen eine Liste an Themen erstellen, die wir behandeln wollen? Ich mach hier mal Vorschläge (@Joon: Ich will dir hier nix vorwegnehmen oder deinen Vortrag hijacken):
    • Review vom letzten Mal anhand eines kleinen Beispiels.
    • Dann: Erweiterung des Beispiels mit den Themen, die neu erlernt werden sollen.
    • Erläuterung Schleifen
    • While-Loop; Do-Loop; For-Loop;
    • Kurz: Break; Continue;
    • Boolean Operations und ihre Möglichkeiten
    • Optional: Kommt auf die Zeit drauf an: Arrays und ganz kurze Einführung in Strings. Aber würde ich lieber aufs nächste mal verschieben, bevor es zu viel Input ist.
    • Review Libraryfunktionen. Einführung des Zufallszahlengenerators
    • Erstellung eines Beispielprogramms durch die Teilnehmer, um das gelernte Anzuwenden. Zum Beispiel ein kleines Ratespiel, bei dem durch den User eine vom PC vorgegebene Zahl erraten werden muss.

(Joon): Moin Dr. Elch (Hilf, mir auf die Sprünge, wer warst du nochmal? 🙂 Danke das du dich so interessierst für den Workshop.
1. Wir können gerne zum Start immer ein kurzes Review vom letzten Workshop machen. Ist ne gute Idee.
2. Die Ganzen Themen die es bei der C Programmierung gibt, wollen wir natürlich auch alle behandeln.
3. Ich würde gerne die Struktur von hier nehmen: http://www.c-howto.de/tutorial-einfuehrung.html

4. Das heißt als Nächstes Thema würde ich gerne die Verzweigungen in Angriff nehmen:
http://www.c-howto.de/tutorial-verzweigungen.html

5. Die Erklärungen sind gut und brauchbar. Zum Schluss gibt es auch immer eine Übungsaufgabe!
6. Desweiteren würde ich es gerne so machen: 1 Workshop, 1 Thema.
7. Schleifen wären dann das Thema für den übernächsten Workshop!

@Dr.Elch: Du kannst aber gerne eine Präse oder ähnliches Vorbereiten und vortragen (also nur wenn du willst)…

(Dr.Elch): Ich war der Typ der links von dir saß und mit Anastasia da war. 🙂 Ich dachte, da Verzweigungen letztes mal schon dran waren, du gleich weiter zu Schleifen gehen wolltest, aber mir auch recht, die Themen nicht zu schnell durchzuboxen. Wobei man vielleicht auch ein wenig Material zu Schleifen haben sollte, da Bedingungen gerade mit Schleifen doch ganz nett harmonieren 🙂 Aber it's up to you.

Ich mach gern mal nen Vortrag bei einem der nächsten Themen, dann hast du nicht die ganze Arbeit.
P.S: ich finds lustig, dass du das C-Tutorial von Elias Fischer nimmst. Das is nämlich ein alter Kollege von mir 🙂

(joon): du kennst E. FIscher? Nice 😉 Also, für den kommenden Freitag: Verzweigungen+Schleifen = MateMat

Du kannst dann gerne dir dieses etwas komplexeren Themen schnappen, wobei ich nicht weiß ob man die zusammen durch kriegt oder ob man die an einzelnen Tagen machen sollte:Funktionen und Pointers… Pointers ist ein wichtiges aber schweres Thema. Vielleicht solltest du das vortragen, da du ja skilled bist 😉

(Dr.Elch): Funktionen und Pointer würde ich nicht an einem Tag machen. Vielmehr würde ich Funktionen mit etwas mehr Wissen über Library Funktionen verknüpfen und die Limitationen aufzeigen, an die wir stoßen ohne Pointer. Alternativ auch Rekursion einführen. Quasi als Hinführung an Pointer. Pointer und Arrays “kann” man an einem Tag machen, wenn alle Mitkommen, sonst eben nur Pointer. Dieses Thema kann ich gern übernehmen.

                                                                         
       ..;;;+++@@@@@@@+++';,.                                            
  #@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#                                        
  @@@++;,,.```````.......``.,'@@@.                                       
 ;@#`,,:::::::;@+;;;;;;@@;;;:::'@@.`                                     
 #@ ,;;;;::::::;@;,,,,,@@,,,,:::@@;,                                     
 @@`:;:.`````   #@,`   @@`,`  ``@@;:`                                    
 @+`;:`          @@,   @@.;.    @@:;.                                    
 @;.;,            @#.  @@.;.    `.,;,              `.                    
 @;.;.            .@+. ,@@@@++++++++#@@@@++;`    @: @+                   
 @;,:`             ;@;`  :@@@@@@@@@@@@@@@@@@@@@; .@`.@: #'               
 @;,:`              #@;` `:;,..````..``.....``;@@;'@.#@,,@`              
 @+::`               #@@@@@+++++++++++++++++@':,;@'##.@+,@+.             
 @+::`                ,;:;;;+++++#@@@@@@@@@@@@@@#;@,@;;@:'@:.            
 @+:;`                `,;,....`.....`````````...'@@@;@:@':@,@`           
 @+:;`               #@@@@@@@@@@@@@@@@@@@@@@@@@@#+@@#@''@:@@@.           
 @+:;`              #@@; ``````................:+@@@@'@:@+@@@:..         
 @#:;`             #@# `.,'#@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@+@;;,         
 @@,;`            '@+ `:@@@@@++;;;;;;;+++++++++#@@@@@@@@@';@;@;,         
 @@,;`           ,@+ `,@@.````............,,,,,'@@@@@@@';#@+##;,`        
 @@,;.          `@# `,;@# `,::;;@@:::::::::::::::;'';;;+@@''@:#,.        
 @@,;.          @@  ,;,@+`::,..`@@```````````````,'+@@@@@;;@+;@:.        
 @@;;.         @@` .;,`@#.;.    @@`,`            #@@@@+:,'@@;@@:.`       
 '@@;,        '@, .::` @@,;`   `@@.;,              `...,@@@:'@',,,       
 .@@;:`      .@' `::.  @',;`   #@;,;,              `:;@@@#,.@@,.:,       
  @@@+,   ......`,;.     :;,.;#@@`,;.             @@@@@@:`.@@;.,;.       
  #@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@`:;`              .;.``.:@@+#.;:`       
   .;'';;;;;;;;;;;;;;;;;;;'++++;`,;:`               `,:;#@@;#@:;.        
    .;;;::::::::::::::::::::::::;;;,                `,+@@;``;@#,`        
    `,:::::::::::::::::::::::;;;;;:.                  ```@@,;#@;,        
      `````````````````````````````                     ;@@;:.@@;`       
                                                        @@@#:.@@@@';@@,  
                                                       +@+@@;::@#@@@@@'  
                                                      `@@ ;@;:`@;;;,.``..
                                                      @@ `;@;;.@+;;;;:;;:
                                                     ;@, ,+@.:.@':;,.,,,.
                                                     @@ `:#@`:.@,,:`     
                                                     @'`,;@+`::@ ,;`     
                                                     @..;,@;`:+@ ,:`     
                                                     @.,;,@`.;@.`::`     
                                                       ::+@ #@# `:,      
                                                       ,:@@+@#` ,:`      
                                                    #@@@,@##::`,;,       
                                                    ++;. @;.;,:;,`       
                                                      `,,@:,;,:,`        
                                                      .:;@::;.`          
                                                      ```@;::`           
                                                         @@::`           
                                                         @@::`           
                                                         ;@#;`           
                                                          #@;.           
                                                           ';:`          
                                                            ,;,          
                                                            `,,`         
                                                             ``          
  • c-noobs.txt
  • Last modified: 2021/04/18 12:35
  • by 127.0.0.1