2013-01-03 63 views
1

我對Linux/C非常陌生。在glibc源代碼中找不到puts()

在glibc的(eglibs 2.15)在我的Linux源我只能找到看跌期權()聲明中/libio/stdio.h

extern int puts (__const char *__s); 

,但無法找到在glibc的來源任何地方放)來源( 。我的猜測是puts()是系統依賴的,它的源代碼是其他地方的。 問題:我在哪裏可以找到puts()源?

另外,它在某些系統上看起來像puts()可用,例如Apple (http://www.opensource.apple.com/source/Libc/Libc-186/stdio.subproj/ puts.c)或NetBSD(https://www-asim.lip6.fr/trac/netbsdtsar/browser/vendor/netbsd/5-20091104/src/lib/libc/stdio/puts.c?rev=160)。

這是爲什麼?

回答

2

在glibc的,卻將是化名爲_IO_puts功能,./libio/ioputs.c定義

+0

爲什麼間接? –

+0

@我認爲自己是弱的別名。我想知道爲什麼'printf'沒有它。 –

相關問題