Реальная реализация функции библиотеки C
Мне было интересно, где я могу найти фактическую реализацию C atoi() (или других таких функций). Я посмотрел в stdlib.h, но похоже, что atoi там не реализован. Есть ли способ просмотреть исходное дерево libc и увидеть реальный код C?
2 ответа
Решение
Получение glibc код можно сделать через apt-get команда. Вот основной процесс, выполняемый в терминале, который занимает не более 5 минут:
- Создайте
glibc-sourceкаталог сmkdir glibc-sourceа такжеcd glibc-source - бежать
apt-get source glibc - однажды
apt-getготово, у вас будет 3 файла и один каталог,glibc-2.23/,glibc_2.23-0ubuntu3.dsc,glibc_2.23-0ubuntu3.debian.tar.xz,glibc_2.23.orig.tar.xz, Файл, который вы хотитеglibc-2.23/stdlib/atoi.c
На самом деле нашел его в репозитории git здесь: https://github.com/lattera/glibc/search?utf8=%E2%9C%93&q=atoi&type=
Оставив это здесь, чтобы помочь кому-то еще, кто может удивиться этому в будущем.