Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: Beginnen met C  (gelezen 14025 keer)

Offline idefix

  • Lid
Re: Beginnen met C
« Reactie #25 Gepost op: 2009/04/29, 09:01:38 »
Hallo Laus_2,

blij te lezen dat iemand dit topic leest  :D
De bibliotheken leer je kennen door ze te gebruiken.  Zo had ik ooit een functie geschreven om kleine letters in hoofdletters om te zetten, om nadien te ontdekken dat die functie in de bibliotheken zit:

#include <ctype.h>
int toupper( int ch );

De functie toupper() retourneert de upper case of hoofdletter van het argument (een kleine letter).

Grafische toepassingen kunnen met http://www.gtk.org/, maar er zijn ongetwijfeld nog andere manieren.
Ik geloof dat GNOME met GTK+ gemaakt is.

Om .debs e.d. te maken: open daarover een ander topic. Ik denk dat daar veel over te zeggen valt. Ik ben geen programmeur, dus ik kan  je er niet bij helpen.
Support bacteria. They're the only culture some people have.

Offline Laus_2

  • Lid
Re: Beginnen met C
« Reactie #26 Gepost op: 2009/04/29, 09:06:08 »
topic is 790  keer gelezen. Lijkt me toch wel bovengemiddeld :p

In java heb je natuurlijk JavaDoc en voor MS heb je MSDN waar je complete references hebt voor alle bibliotheken. Ik zoek eigenlijk nog zoiets voor Linux.

Ga me sowieso eens verder verdiepen in GTK/Glade.

Ik wil ook graag weten hoe het ./configure en make gebeuren in elkaar steekt. zijn daar goede turorials voor?

Offline track

  • Lid
Re: Beginnen met C
« Reactie #27 Gepost op: 2009/04/29, 10:45:34 »
Hoi  Laus,

C is (gelukkig) helemaal niet beperkt op Linux.  Vandaar had ik boven in mijn antword #2 ook een algemene tutorial aangehaald.
De aanpassing aan zijn omgeving gebeurt door bepaalde headers die passend bij de verschillende omgevingen beschikbaar zijn
en ingesloten worden: "include".

Het "make" script is ook standaard bij alle compilers. Een overzicht heb je hier: http://nl.wikipedia.org/wiki/Make
Normaal gebruik je van de (talrijke) mogelijkheden maar weinigen. Dus heb ik mij er ook niet verder druk over gemaakt.

Als je het precies wilt weten kun je hier kijken: http://cs.acadiau.ca/~jdiamond/comp2103/beginner-tutorials/LinuxTutorialGcc.html

Vriendelijke groet,

track

Offline Laus_2

  • Lid
Re: Beginnen met C
« Reactie #28 Gepost op: 2009/04/30, 21:55:09 »
Hoi  Laus,

C is (gelukkig) helemaal niet beperkt op Linux.  Vandaar had ik boven in mijn antword #2 ook een algemene tutorial aangehaald.
De aanpassing aan zijn omgeving gebeurt door bepaalde headers die passend bij de verschillende omgevingen beschikbaar zijn
en ingesloten worden: "include".

Het "make" script is ook standaard bij alle compilers. Een overzicht heb je hier: http://nl.wikipedia.org/wiki/Make
Normaal gebruik je van de (talrijke) mogelijkheden maar weinigen. Dus heb ik mij er ook niet verder druk over gemaakt.

Als je het precies wilt weten kun je hier kijken: http://cs.acadiau.ca/~jdiamond/comp2103/beginner-tutorials/LinuxTutorialGcc.html

Vriendelijke groet,

track

bedankt voor het gedeelte over Make. Erg leuk leesvoer.

Ik begrijp dat C gebruikt wordt op verschillende platforms en met verschillende header-files. Maar ik zoek meer een soort overview/hierarchische weergave van allerlei bibliotheken binnen linux. Stel ik wil de broncode van een bepaald progsel aanpassen, welke functies kan ik dan gebruiken? Hoe zie ik wat er in de includes beschikbaar heb? Is er iets van intellisense?

Offline track

  • Lid
Re: Beginnen met C
« Reactie #29 Gepost op: 2009/04/30, 23:26:10 »
Je kunt eigenlijk veronderstellen dat de structuur van Linux grotendeels door C gevormd wordt.
Je zult dat ook terugvinden als je het geheel van de man-pages bekijkt.
Er is een geheel hoofdstuk over C-functies zoals zij in Linux gedefineerd zijn en gerbruikt worden.
(kun je ook bekijken op  http://linux.die.net/man/  Section 2 en 3 )

Als je nu de functie van een bepaalde programma wilt nagaan zou je het eerst kijken welke headers en bibliotheken
er ingebonden worden of zijn. (de al genoemde include's)
En dan nagaan wat zij inhouden en doen.

De andere aanpak, van eerst alle blokken te leren kennen en vanuit deze kennis een programma proberen te begrijpen
is volgens mij een dwaalweg, gewoon omdat er veel te veel van die "blokken" en functies zijn.

Dus liever vanuit de grote schaal verder naar de kleinere delen en functies kijken.
Dat past ook veel beter bij de manier van denken als je een beetje gestructureerd programmeert.

Je mag nooit vergeten dat een Linux enkele milioenen regels C-code bevat. 
Dat is gewoon niet vanuit het perspectief van de individuële functie te begrijpen.
Je moet gewoon in een grotere schaal denken.

Vriendelijke groet,

track

Offline Laus_2

  • Lid
Re: Beginnen met C
« Reactie #30 Gepost op: 2009/04/30, 23:42:36 »
heb je zeker gelijk in. Ik doe altijd veel uitzoekwerk om vervolgens te delegeren dus vandaar mss mijn vragen zo :p

Heb wel eens naar de broncode van Kernel 0.01 gekeken. Daar is dus echt niks van te begrijpen. Maar wel interessante materie. Was ik nou toch maar Technische Informatica of Elektronica gaan studeren in Twente/Delft ofzo...

Offline track

  • Lid
Re: Beginnen met C
« Reactie #31 Gepost op: 2009/04/30, 23:47:28 »
Misschien doe je eerst je huiswerk en schrijft je eigen C-programma(s).
Als je dat onder de knie hebt kun je doorgaan met een driver te schrijven en integreren.
Daarna heb je al een heleboel van de structuur begrepen !

track