dポイントプレゼントキャンペーン実施中!

puts()とかatoi()関数の実際の処理を見たいのですがどこにありますか?

A 回答 (3件)

glibc-2.3.6 からの引用です。


参考にしてみてください。

[ glibc-2.3.6/libio/ioputs.c ]

int
_IO_puts (str)
   const char *str;
{
 int result = EOF;
 _IO_size_t len = strlen (str);
 _IO_acquire_lock (_IO_stdout);

 if ((_IO_vtable_offset (_IO_stdout) != 0
    || _IO_fwide (_IO_stdout, -1) == -1)
   && _IO_sputn (_IO_stdout, str, len) == len
   && _IO_putc_unlocked ('\n', _IO_stdout) != EOF)
  result = len + 1;

 _IO_release_lock (_IO_stdout);
 return result;
}

[ glibc-2.3.6/stdlib/atoi.c ]

int
atoi (const char *nptr)
{
 return (int) strtol (nptr, (char **) NULL, 10);
}
    • good
    • 0

glibcのソースパッケージがあるはずなので、それを取得して展開してみる。

    • good
    • 0

探せば見付かる。


FreeBSD なら /usr/src/lib/libc/stdlib/ の辺

この回答への補足

fedoracore6です。

補足日時:2007/01/20 18:56
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!