| Code Kitchen Allgemeines Coder-Forum rund um das Programmieren eigenständiger, ausführbarer Programme. |
Diskussion: Befehle in C im Forum Code Kitchen, in der Kategorie Software Home; Anzeige Hallo zusammen, ich wollte mir grad mal in den Bibliotheken von C anschauen wie die Befehle definiert sind und ...
![]() |
| | #1 (permalink) |
| Registriert seit: 19.08.04 ![]() Likes: 1 | Anzeige Hallo zusammen, ich wollte mir grad mal in den Bibliotheken von C anschauen wie die Befehle definiert sind und wie diese genau aussehen, also ein cat -n stdio.h | grep "printf" und es kommt nur ein extern int printf(const char *formatstring) , gut dachte ich mir, dann halt das Makro getchar, wieder das gleiche und es kommt wieder nur ein extern void getchar(), obwohl es sowas wie #define getchar getc(stdin) sein müßte. Daher meine Frage, wo sind die Befehle eigentlich definiert in C bzw. die Funktionen und Makros ? Ich hab mir auch mal die Ausgabe vom Präprozessor angeschaut, auch keine genaueren Ausgaben oder denke ich grad irgendwie falsch ? |
| | |
| | #2 (permalink) |
| Registriert seit: 21.05.04 ![]() Likes: 0 | die Befehle sind in diversen (binär) Bibliotheken definiert, die Header sagen dem Compiler quasi nur "es gibt Befehl sowieso..." und er schaut dann in den Libs nach und ordnet das entsprechend zu. Richtig ausprogrammierte Funktionen wirst du in .h Dateien nicht finden, andernfalls hat jemand was am Konzept von Headerfiles nicht verstanden. Also nur mal als Beispiel, unter Linux fliegt dann auf deinem System irgendwo die Datei libm.a rum. Dort drin sind die Sachen aus math.h, falls ich mich nicht irre. |
| | |
| HaBOT | - Anzeige - |
| |
| | #3 (permalink) |
| Registriert seit: 05.04.04 ![]() Likes: 0 | in den headerdateien stehen nur die deklarationen der funktionen, damit der compiler weiß, dass es eine solche funktion gibt und prüfen kann, ob du die passenden parameter bereitgestellt hast. die eigentliche definition ist in der standard-bibliothek versteckt (unter unix/linux müsste das ding libc heißen). wenn du die implementationen dieser funktionen sehen willst, dann musst du dir wohl den (kompletten) quellcode der standard-bibliothek besorgen. edit: hmpf, da war einer schneller... naja, noch zur ergänzung: es gibt durchaus funktionen, die komplett in headerdateien implementiert werden. bei c++-templates ist das sogar die übliche vorgehensweise. aber in den restlichen fällen ist es meist nicht sinnvoll, das stimmt. |
| | |
![]() |
| - Anzeige - | |
| |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| MS-DOS Befehle-Die geheimen | Zakr! | Windows | 17 | 06.03.06 10:14 |
| C++ Befehle | torsten | Code Kitchen | 5 | 29.01.06 00:09 |
| C++ Befehle | torsten | Off topic-Zone | 5 | 29.01.06 00:09 |
| CMD Befehle | spy | Code Kitchen | 4 | 30.01.04 13:52 |
| Dos Befehle in | Stromer | Code Kitchen | 2 | 24.05.03 12:02 |