Показать полную графическую версию : Вот такой интересный вопрос по С
У меня такой вопрос. Мне надо пролинковать мою прогу на ассемблере(*.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
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
:)
Поддерживаю. В *.obj Printf'a и в помине нет. Можно хекс-редактором посмотреть. Сама же функция находится в CX.LIB, где X - буква, соотвествующая модели памяти.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC