|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
я не понимаю. и нарыть в это интернете не получается и в книге не описано. вот допустим есть библиотека math.h , я её инклужу и никаких файлов не линкую с моим проектом. и этого достаточно: я могу использовать всякие там синусы , логарифмы , возведение в степень. вопрос: где описываются эти всякие функции синусы , косинусы. Ведь провалившись в math.h реализаций этих функций мы не увидим. Оно и понятно ведь это заголовочный файл, но тогда где описаны эти функции ? Если эти функции описаны в стандартной библиотеке тогда зачем мне инклудить тогда math.h ???? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 09:04 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
Опции линкера подключают библиотеки. В том числе и math. И в каждом компилляторе их названия могут отличаться. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 10:45 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
andron81, Разработчики компилятора написали math.c, откомпилировали его в виде библиотеки. Эта библиотека по умолчанию подключена к вашему проекту. Там эти функции. Вам отдали math.h. И откомпилированный файл библиотеки. Полная аналогия с тем что делаете вы. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 10:47 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
mayton, Его любознательнось хочет узнать, в какой *.so/dll лежит реализация квадратного корня. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 10:57 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
Для gcc - это будет опция -lm, и дальше можно поискать что фактически слинковалось в бинарник Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 10:59 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
Для линукс файл лежит предположительно тут. (Strace показывает) Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:04 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
"man ldd"? Или слишком примитивно? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:07 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
Еще вариант - скомпилить два бинарника. С либой и без. - потом изучать ldd имя-бинарника ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:07 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
Можно самому функцию синуса написать. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:10 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
mayton Можно самому функцию синуса написать. дело не в синусе и не в math.h просто если речь коснется написания своей библиотеке подобно math.h да даже и такой задачи тоже пока нет. просто хотелось бы понять. как устроены заголовочные файлы. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:22 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
Заголовочные файлы - это пережиток глубокого прошлого кибернетики. Изучая его - ты будешь изучать историю ЭВМ и первых компилляторов. Тебе оно надо? Просто пользуйся и все. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:27 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
petrav andron81, Разработчики компилятора написали math.c, откомпилировали его в виде библиотеки. Эта библиотека по умолчанию подключена к вашему проекту. Там эти функции. Вам отдали math.h. И откомпилированный файл библиотеки. Полная аналогия с тем что делаете вы. мне пока хотя бы представление иметь как это делается. просто выясняется , что помимо какого - нибудь заголовочного файла myheader.h ещё имеется приложение в виде myheader.c ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:28 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
mayton Заголовочные файлы - это пережиток глубокого прошлого кибернетики. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:37 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
mayton, я попытаюсь объяснить зачем мне это . я зануда прорабатываю упражнения K&R и исходники тоже по макс. досконально разбираю. Они там переписывают как бы stdin.h Подрузамевается , что нижеуказанный фрагмент это кусок типичного заголовочного файла например stdin.h Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31.
а потом реализуется fopen и _fillbuf. Их исходники не привожу, но они есть в книге . и далее на этой основе требуется переработать fopen и _fillbuf. Вот и как я должен перерабатывать. я выпутался так , что я подключаю этот вышеуказанный заголовок, а fopen и _fillbuf реализую в файле add.c и подликовываю с основным файлом (там где у меня функция main). Но я думал, что все проще , а не проще. это всё устарело, да, но упражнения ведь я хочу выполнить... ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:46 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
Для современного компиллятора нет никакой мотивации создавать 2 артифакта. Хедер и реализацию. Мета-описательные возможности - безграничны. И размерами мы слава богу не ограничены (не 64 килобайта у нас на десктопах слава богу). Поэтому я и утверждаю в топике что хедеры - это пережиток старины. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:51 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
andron81 я попытаюсь объяснить зачем мне это . я зануда прорабатываю упражнения K&R и исходники тоже по макс. досконально разбираю. Они там переписывают как бы stdin.h Может не надо этого делать? Какого года эти "упражнения"? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:52 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
mayton, немножко осталось ))) штук 5 от силы . последняя глава :) 80 какого-то года эти упражнения ))))))))))) ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:53 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
andron81, >имеется приложение в виде myheader.c = это не приложение. Прежде чем код писать, разберись о чем мы? Бинарник + либы.so? Или о чем ты? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:54 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
mayton, Ну, хедеры или подключение либы не суть ведь. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:55 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
PetroNotC Sharp andron81, >имеется приложение в виде myheader.c = это не приложение. Прежде чем код писать, разберись о чем мы? Бинарник + либы.so? Или о чем ты? 22189769 ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:55 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
andron81 mayton, немножко осталось ))) штук 5 от силы . последняя глава :) 80 какого-то года эти упражнения ))))))))))) Вот ты чудак. Подозреваю что дедушки Денис и Брайан писали даже не про С++ а про С. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:56 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
mayton andron81 mayton, немножко осталось ))) штук 5 от силы . последняя глава :) 80 какого-то года эти упражнения ))))))))))) Вот ты чудак. Подозреваю что дедушки Денис и Брайан писали даже не про С++ а про С. разумеется под Си. но чуть чуть ведь осталось ) ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:57 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
andron81, > это всё устарело, да, но упражнения ведь я хочу выполнить... == тогда сам, в одиночку. Немного желающих в старине копаться. Один, полтора землекопа). ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:58 |
|
где все же описываются функции из .h-ек
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mayton, Ну, хедеры или подключение либы не суть ведь. Вот мы добрались до самого главного. До гвоздя программы. Или до десертного блюда. Кто и где гарантирует что хедер соответствует либе? Тоесть где в этой системе координат будет декларировано что ЭТОТ хедер именно от этой либы? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2020, 11:58 |
|
|
start [/forum/topic.php?fid=57&fpage=6&tid=2017344]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
39ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
62ms |
get tp. blocked users: |
2ms |
others: | 263ms |
total: | 414ms |
0 / 0 |