Wo ist der Quellcode der Scanf-Implementierung?

8

Ich möchte C-Quellcode für die scanfImplementierung auf einem Linux-Computer finden. Das Googeln, um eine scanfImplementierung zu finden , sagt mir nicht, wie ich sie finden soll. Ich habe versucht, diesen Quellcode aus dem gccQuellbaum mit ctagsund zu finden, cscopekonnte ihn aber nicht finden. Kann mir bitte jemand sagen, wo sich die scanfFunktionsdefinition befindet, dh der Quellcode der Implementierung?

Freddy
quelle
Sie können diese Informationen häufig direkt über Ihre Distribution erhalten. Mit Debian / Ubuntu ist das zum Beispiel einfach. Was ist Ihre Verteilung?
Faheem Mitha
Es ist Ubuntu 12.04 LTS
Freddy

Antworten:

6

Es ist in der glibcBibliothek scanf.c Quelle

glibcsteht für GNU C Library . Es ist eine C-Standardbibliotheksimplementierung. Es ist kein Teil des Compilers, da Sie möglicherweise unterschiedliche Implementierungen (wie z. B. Microsoft C-Laufzeit) sowie unterschiedliche Compiler (wie z. B. clang) haben.

UVV
quelle
Danke für die schnelle Antwort! Könnten Sie bitte erläutern, warum dieser Quellcode nicht in meinem gcc-Quellbaum enthalten ist (?)? Ich weiß nicht, was glibcmein hello_world-Programm unterstützt.
Freddy
1
Es ist die primäre Bibliothek von Funktionen und Definitionen für C-Programme. Es enthält die Funktion, die Sie suchenscanf()
X Tian
4
Es sei nur darauf hingewiesen, dass es auch andere C-Standardbibliotheken und damit auch scanfImplementierungen gibt, z. B. uClibc: github.com/ffainelli/uClibc/blob/master/libc/stdio/_scanf.c
phk