powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / где все же описываются функции из .h-ек
68 сообщений из 68, показаны все 3 страниц
где все же описываются функции из .h-ек
    #39994002
andron81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я не понимаю. и нарыть в это интернете не получается и в книге не описано. вот допустим есть библиотека math.h , я её инклужу и никаких файлов не линкую с моим проектом. и этого достаточно: я могу использовать всякие там синусы , логарифмы , возведение в степень.
вопрос: где описываются эти всякие функции синусы , косинусы. Ведь провалившись в math.h реализаций этих функций мы не увидим. Оно и понятно ведь это заголовочный файл, но тогда где описаны эти функции ? Если эти функции описаны в стандартной библиотеке тогда зачем мне инклудить тогда math.h ????
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994011
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Опции линкера подключают библиотеки. В том числе и math. И в каждом компилляторе их названия могут отличаться.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994012
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron81,

Разработчики компилятора написали math.c, откомпилировали его в виде библиотеки.
Эта библиотека по умолчанию подключена к вашему проекту. Там эти функции.

Вам отдали math.h. И откомпилированный файл библиотеки.

Полная аналогия с тем что делаете вы.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994014
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
Его любознательнось хочет узнать, в какой *.so/dll лежит реализация квадратного корня.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994015
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для gcc - это будет опция -lm, и дальше можно поискать что фактически слинковалось в бинарник

Код: plaintext
1.
$ gcc ..... -lm
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994017
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для линукс файл лежит предположительно тут. (Strace показывает)

Код: plaintext
1.
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994018
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"man ldd"?
Или слишком примитивно?
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994019
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще вариант
- скомпилить два бинарника. С либой и без.
- потом изучать
ldd имя-бинарника
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994021
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно самому функцию синуса написать.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994026
andron81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Можно самому функцию синуса написать.


дело не в синусе и не в math.h
просто если речь коснется написания своей библиотеке подобно math.h
да даже и такой задачи тоже пока нет. просто хотелось бы понять. как устроены заголовочные файлы.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994029
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Заголовочные файлы - это пережиток глубокого прошлого кибернетики. Изучая его - ты будешь изучать
историю ЭВМ и первых компилляторов. Тебе оно надо? Просто пользуйся и все.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994030
andron81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
petrav
andron81,

Разработчики компилятора написали math.c, откомпилировали его в виде библиотеки.
Эта библиотека по умолчанию подключена к вашему проекту. Там эти функции.

Вам отдали math.h. И откомпилированный файл библиотеки.

Полная аналогия с тем что делаете вы.


мне пока хотя бы представление иметь как это делается.
просто выясняется , что помимо какого - нибудь заголовочного файла myheader.h ещё имеется приложение в виде myheader.c
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994033
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Заголовочные файлы - это пережиток глубокого прошлого кибернетики.
"Primary source", вроде, только в IBM Visual Age for C/C++ v4.0 были (середина девяностых). Как-то не взлетело. Так какой-же оно пережиток?
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994038
andron81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
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.
#define NULL О
#define EOF (-1)
#define BUFSIZ 1024
#define OPEN_MAX 20 /* max число одновременно открытых файлов */
typedef struct _iobuf {
 int cnt; /* количество оставшихся символов */
 char *ptr; /* позиция следующего символа */
 char *base; /* адрес буфера */
 int flag; /* режим доступа */
 int fd; /* дескриптор файла */
} FILE;
extern FILE _iob[OPEN_MAX];
#define stdin (&iob[0])
#define stdout (&_iob[1])
#define stderr (&_iob[2])
enum _flags {
 _READ =01, /* файл открыт на чтение */
 _WRITE = 02, /* файл открыт на запись */
 _UNBUF = 04, /* файл не буферизуется */
 _EOF = 010, /* в данном файле встретился EOF */
 _ERR = 020 /* в данном файле встретилась ошибка */
};
int _fillbuf(FILE *);
int _flushbuf(int, FILE *);
#define feof(p) (((p)->flag & _EOF) != 0)
#define ferror(p) (((p)->flag & _ERR) != 0)
#define fileno(p) ((p)->fd)
#define getc(p) (--(p)->cnt >= 0 ? (unsigned char) *(p)->ptr++ : _fillbuf(p))
#define putc(x.p) (--(p)->cnt >= 0 ? *(p)->ptr++ = (x) : _flushbuf((x),p))
#define getchar() getc(stdin)
#define putchar(x) putc((x), stdout)



а потом реализуется fopen и _fillbuf. Их исходники не привожу, но они есть в книге .
и далее на этой основе требуется переработать fopen и _fillbuf.

Вот и как я должен перерабатывать. я выпутался так , что я подключаю этот вышеуказанный заголовок, а fopen и _fillbuf реализую в файле add.c и подликовываю с основным файлом (там где у меня функция main).
Но я думал, что все проще , а не проще.
это всё устарело, да, но упражнения ведь я хочу выполнить...
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994041
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для современного компиллятора нет никакой мотивации создавать 2 артифакта. Хедер и реализацию.
Мета-описательные возможности - безграничны. И размерами мы слава богу не ограничены (не 64 килобайта
у нас на десктопах слава богу).

Поэтому я и утверждаю в топике что хедеры - это пережиток старины.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994042
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron81

я попытаюсь объяснить зачем мне это . я зануда прорабатываю упражнения K&R и исходники тоже по макс. досконально разбираю.
Они там переписывают как бы stdin.h

Может не надо этого делать? Какого года эти "упражнения"?
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994044
andron81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

немножко осталось ))) штук 5 от силы . последняя глава :)
80 какого-то года эти упражнения )))))))))))
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994046
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron81,

>имеется приложение в виде myheader.c
= это не приложение.
Прежде чем код писать, разберись о чем мы?
Бинарник + либы.so?
Или о чем ты?
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994048
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
Ну, хедеры или подключение либы не суть ведь.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994049
andron81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
andron81,

>имеется приложение в виде myheader.c
= это не приложение.
Прежде чем код писать, разберись о чем мы?
Бинарник + либы.so?
Или о чем ты?



22189769
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994050
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron81
mayton,

немножко осталось ))) штук 5 от силы . последняя глава :)
80 какого-то года эти упражнения )))))))))))

Вот ты чудак. Подозреваю что дедушки Денис и Брайан писали даже не про С++ а про С.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994051
andron81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
andron81
mayton,

немножко осталось ))) штук 5 от силы . последняя глава :)
80 какого-то года эти упражнения )))))))))))

Вот ты чудак. Подозреваю что дедушки Денис и Брайан писали даже не про С++ а про С.


разумеется под Си. но чуть чуть ведь осталось )
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994052
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron81,
> это всё устарело, да, но упражнения ведь я хочу выполнить...
== тогда сам, в одиночку. Немного желающих в старине копаться. Один, полтора землекопа).
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994053
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
mayton,
Ну, хедеры или подключение либы не суть ведь.

Вот мы добрались до самого главного. До гвоздя программы. Или до десертного блюда.

Кто и где гарантирует что хедер соответствует либе? Тоесть где в этой системе координат
будет декларировано что ЭТОТ хедер именно от этой либы?
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994054
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron81
PetroNotC Sharp
andron81,

>имеется приложение в виде myheader.c
= это не приложение.
Прежде чем код писать, разберись о чем мы?
Бинарник + либы.so?
Или о чем ты?



22189769

22189785
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994058
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
Названия уникальны. Путь пишем в настройках при линковке. Пути поиска либ есть при запуске.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994060
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Кто и где гарантирует что хедер соответствует либе?
"Вы знали, на что идёте" (ц) Раздельная Компиляция.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994065
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
mayton,
Названия уникальны. Путь пишем в настройках при линковке. Пути поиска либ есть при запуске.

Ты думаешь это так всё просто? Тут - технического долга на 20 лет. Мы уже говорили про
отсутствие менеджера пакетов. И дай бох речь идет просто о math.h там все просто как парить репу.
А если у нас много зависимостей? И они - прикладные. И они - эволюционируют.

Да ладно вобщем тема не особо интересна. Тем более что оофтопим. Просто расскажи автору
как ему в генерализованном обобщённом компилляторе "C" под Windows искать где
в каких *dll лежат его зависимости.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994068
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
Аффтар пусть сам. Мне в старине не интересно. Передо мной проект на Qt5. C++11
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994070
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
Версионирование отдельная замороченная тема. Что в шарпе, что везде.
Удачи аффтару!
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994071
Фотография AmKad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Многие ли пишут слово "компилятор" с двумя буквами "л"?
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994075
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
andron81
mayton,

немножко осталось ))) штук 5 от силы . последняя глава :)
80 какого-то года эти упражнения )))))))))))

Вот ты чудак. Подозреваю что дедушки Денис и Брайан писали даже не про С++ а про С.

А что с тех пор что-то изменилось в работе с заголовочниками? С чего бы они устарели?

Всё актуально.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994077
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AmKad,
А многие в ветке прогеров подменяют тему правописанием?)
Давайте расширять а не подменять тему.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994079
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994080
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AmKad, да. Пожалуй не стоит втаскивать в топик тему граммар-нацизма. Все таки - это форум
технических инженеров а не филологов. Модераторская просьба.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994081
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник

Ну и к чему ты это мне линканул? :)
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994084
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
petrav

Ну и к чему ты это мне линканул? :)
там написано что ПОКА различий нет.
Почти слово deprecated.
Не?
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994086
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
petrav
пропущено...

Ну и к чему ты это мне линканул? :)
там написано что ПОКА различий нет.
Почти слово deprecated.
Не?

При чём тут, что "math.h" — это от Си, а "cmath" — это от C++ ? Ну а "boost/format.hpp" это от Boost. И что?

Я писал про логику работы с заголовочниками. Она актуальна со времён K&R. Ничего не изменилось.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994088
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
petrav,
Для лично вас, написание другого слова в include это ничего не изменилось.
Они и на deprecated плюют.
А для других это повод задуматься глубже.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994090
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
petrav,
Для лично вас, написание другого слова в include это ничего не изменилось.
Они и на deprecated плюют.
А для других это повод задуматься глубже.

Тяжёлый у тебя случай. А потом ты ещё обиженно спрашиваешь почему я тебе не отвечаю.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994091
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
petrav,
А мне интесны твои ответы про устройство переменной строки?
Покусались и разошлись)))))
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994094
andron81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

видимо я своими вопросами людей тут развлекаю: пускаются во флуд и выясненяют отношения .
ок. 2 вопроса:
Имеем вот это.
22189769

1. почему стариканы делают объявление в заголовочнике , ведь там этого быть не должно :
extern FILE _iob[OPEN_MAX]; Можно предположить зачем тут нарушается концепция ?
или это не заголовочник вовсе ?

2. как эта тема вся называется ? если я хочу сделать свою функцию и подключать её ?
создание библиотек для C / C++ , верно ?
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994097
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron81,
>почему стариканы делают
===))) молодые перцы делают либу.so в виде файла и подключают ее к проекту бинарнику. Внутри либы твоя функция.
Если этот конечный результат устраивает, то дальше проще уже.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994099
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonПросто расскажи автору как ему в генерализованном обобщённом компилляторе "C" под Windows
искать где в каких *dll лежат его зависимости.

В "генерализованом обобщённом" и "dll" - никак. Потому что у каждого компилятора своя
утилита-библиотекарь и туева хуча библиотек - статические, а не динамические.

Если же начать с начала топика и GCC, то ключ линкера -nostdlib откроет удивительный мир
библиотек, подключаемых им по собственной инициативе.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994101
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron811. почему стариканы делают объявление в заголовочнике , ведь там этого быть не должно :
extern FILE _iob[OPEN_MAX];

Ещё три часа медитации на горохе. Заголовочники - как раз и предназначены для
ОБЪЯВЛЕНИЙ . И процитированное - это объявление.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994107
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron81

2. как эта тема вся называется ? если я хочу сделать свою функцию и подключать её ?
создание библиотек для C / C++ , верно ?

Я плюсую к этому вопросу. Но мне кажется что он неизбежно распадается на 2 треда.
Это - направление С++MS Visual Studio. Там будет своя инструкция и свои pitfalls.
И отдельно для gcc/clang. Тоже свои советы. Опции.

Просто на этом вопросе язык С++ заканчивается и начинается конкретный компиллятор и надо
уже учить его спеку и пробовать.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994108
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonandron812. как эта тема вся называется ? если я хочу сделать свою функцию и
подключать её ? создание библиотек для C / C++ , верно ?

Я плюсую к этому вопросу.

Эта тема называется "базовая информация о процессе компиляции Си программ".
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994112
andron81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
andron81

2. как эта тема вся называется ? если я хочу сделать свою функцию и подключать её ?
создание библиотек для C / C++ , верно ?

Я плюсую к этому вопросу. Но мне кажется что он неизбежно распадается на 2 треда.
Это - направление С++MS Visual Studio. Там будет своя инструкция и свои pitfalls.
И отдельно для gcc/clang. Тоже свои советы. Опции.

Просто на этом вопросе язык С++ заканчивается и начинается конкретный компиллятор и надо
уже учить его спеку и пробовать.


MS Visual Studio
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994114
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron81
mayton
пропущено...

Я плюсую к этому вопросу. Но мне кажется что он неизбежно распадается на 2 треда.
Это - направление С++MS Visual Studio. Там будет своя инструкция и свои pitfalls.
И отдельно для gcc/clang. Тоже свои советы. Опции.

Просто на этом вопросе язык С++ заканчивается и начинается конкретный компиллятор и надо
уже учить его спеку и пробовать.


MS Visual Studio

Ну давай пиши свою функцию синус. И собирай ее как библиотечку пока. Это будет первая фаза.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994115
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonНу давай пиши свою функцию синус.

Какое, нафиг, "пиши". Ему сначала надо понять что такое
1) Препроцессинг
2) Компиляция
3) Линковка

Стадии оптимизации и ассемблирования оставим за кадром для простоты.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994117
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пускай пишет. Разведка - боем.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994126
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Она подразумевает, что разведчик сдохнет и не больше вернётся. В данном случае это не
сработает.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994134
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,
Прикладник тянет к себе. Системщик тянет в препроцессинг, Сишник тянет ЯП прошлого столетия.
Так как ничего не изменилось.
Всё как обычно!
Автор пусть работает. Его книжка его проблемы.
))
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994137
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron81
я не понимаю. и нарыть в это интернете не получается и в книге не описано. вот допустим есть библиотека math.h , я её инклужу и никаких файлов не линкую с моим проектом. и этого достаточно: я могу использовать всякие там синусы , логарифмы , возведение в степень.


Нет, этого не достаточно, ты должен прилинковать стандартную библиотеку С и/или С++.

andron81

вопрос: где описываются эти всякие функции синусы , косинусы. Ведь провалившись в math.h реализаций этих функций мы не увидим. Оно и понятно ведь это заголовочный файл, но тогда где описаны эти функции ? Если эти функции описаны в стандартной библиотеке тогда зачем мне инклудить тогда math.h ????


Эти функции есть в стандартной библиотеке С или С++. Конкретно эти -- в стандартной библиотеке С.

#include надо писать, чтобы добавить объявления этих функций и возможно чего-то ещё. Такова схема работы вещей в С и С++.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994226
Фотография Кроик Семён
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Эксперимент
(сам проверить не могу)

думаю, это сработает:

1) копируем из math.h заголовок какой-нибудь функции
2) в C-файле нашего проекта никаких #include <math.h> не пишем,
3) a вместо этого вставляем туда скопированный из math.h заголовок функции

уверен, что линкер и без math.h найдет какую-нибудь функцию с этим именем, если повезет то из math.c , и слинкует её с вызовом
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994238
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проверяй чо.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994279
mini.weblab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а что происходит в линуксе? там же должен быть опенсорс и по идее можно все найти, если только знать где искать
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994296
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mini.weblab,
Так и есть. Если взять правильную книгу за основу.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994358
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mini.weblab
а что происходит в линуксе? там же должен быть опенсорс и по идее можно все найти, если только знать где искать

Оперсорц кроме открытости никогда не гарантировал "понятности".

Тоесть в данном контексте он (опенсорц) нам ничего не должен.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994362
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
Он наверно ожидает как в java
- скачал исходники
- добавил include
- мыкой кликнул на функцию корня квадратного
- и получил реализацию в дебрях 50го колена исходников.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994372
mini.weblab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

зато в Linux опенсорсе всегда можно сказать:
Код: powershell
1.
$ man 3 sin


и получить доступный ответ
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994373
mini.weblab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp

- мыкой кликнул на функцию корня квадратного
- и получил реализацию в дебрях 50го колена исходников.

кстати да! я так и сделала
https://www.gnu.org/software/libc/documentation.html
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994412
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mini.weblabи получить доступный ответ

Но это же придётся
1) разглядеть предложение "link with", которое может и отсутствовать;
2) Знать что такое link и зачем он там упомянут.

А так то и в VS можно жмякнуть F1 и получить https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/sin-sinf-sinl?view=vs-2019 но всё равно придётся читать аж до "Required Header".
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994415
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mini.weblab
mayton,

зато в Linux опенсорсе всегда можно сказать:
Код: powershell
1.
$ man 3 sin


и получить доступный ответ

И какая полезная информация была извлечена для топика?
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994474
mini.weblab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
1)
я думала, что ТС хочет увидеть исходники, и одно из достоинств Линукса это возможность увидеть код вживую
(хотя, как ты уже заметил выше, разобраться там будет непросто)
2)
если слишком глубоко копать не хочется, то будет достаточно того, что написано в man.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994483
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
man - это просто справочник. Это для тех кто уже знает что ему надо и у кого есть в голове стратегия или план.

И по man никто не учит С++. Ну по крайней мере я не знаю таких людей.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39994667
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кроик Семён
уверен, что линкер и без math.h найдет какую-нибудь функцию с этим именем, если повезет то из math.c , и слинкует её с вызовом
должно сработать, ибо линкер не допускает одинаковых имён функций, находящихся на одном "уровне". В этом и была задумка, чтобы юзеру явно не указывать, откуда берётся функция.
...
Рейтинг: 0 / 0
где все же описываются функции из .h-ек
    #39995528
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кроик Семён
Эксперимент
(сам проверить не могу)

думаю, это сработает:

1) копируем из math.h заголовок какой-нибудь функции
2) в C-файле нашего проекта никаких #include <math.h> не пишем,
3) a вместо этого вставляем туда скопированный из math.h заголовок функции

уверен, что линкер и без math.h найдет какую-нибудь функцию с этим именем, если повезет то из math.c , и слинкует её с вызовом


Найдёт, конечно. И слинкует.
...
Рейтинг: 0 / 0
68 сообщений из 68, показаны все 3 страниц
Форумы / C++ [игнор отключен] [закрыт для гостей] / где все же описываются функции из .h-ек
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]