Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Вот такой интересный вопрос по С (http://forum.oszone.net/showthread.php?t=30211)

RulesLv 21-10-2003 00:40 207787

У меня такой вопрос. Мне надо пролинковать мою прогу на ассемблере(*.obj)  с *.obj файлом из стандартной библиотеки языка С (Turbo C). Кароче мне впадло писать функцию printf. Мне надо знать в каком із obj файлов реализована эта. Вот их список C0c.obj,C0fc.obj,C0fh.obj,C0fl.obj,C0fm.obj,C0fs.obj,C0ft.obj,C0h.obj,C0l.obj,C0m.obj,C0s.obj,C0t.ob j,Wildargs.obj      
Помогите если хто знает....  

shurikan 25-10-2003 05:30 207788

RulesLv
Ни в одном!!! Все obj-и, начинающиеся с C, это тот код, с которого прога стартует. Каждый для своей модели памяти и конфигурации. Wildargs - парсер. printf сидит в библиотеках cs.lib, cc.lib, cm.lib, cl.lib, ch.lib.
Только не ясно, какая связь между стандартной функцией C, коей является printf, и связыванием (линкованием) нескольких объектников, скомпилённых с исходников, написанных на разных языках?


Добавлено:

Дошло!!!
Ты хочешь вынуть printf из стандартной библиотеки, а вся твоя прога на чистом asm-е. Ну, значится так.
TLINK asm_objfiles, exe_file, map_file, cX.lib
, где буква X - первая буква английского названия модели памяти, в которой ты хочешь линковать программу.
s - small
c - compact
m - medium
l - large
h - huge
:)

bgg0408 26-10-2003 00:29 207789

Поддерживаю. В *.obj Printf'a и в помине нет. Можно хекс-редактором посмотреть. Сама же функция находится в CX.LIB, где X - буква, соотвествующая модели памяти.


Время: 15:44.

Время: 15:44.
© OSzone.net 2001-