Почему создается файл .obj ?
После тоо как скомпилировал создается файл g.obj g.cpp исходник.
че-от не пойму - в чем вопрос то? ну скомпилил, создался объектник и экзешник - так и надо, а в чем проблема?
Цитата:
Originally posted by Relax
че-от не пойму - в чем вопрос то? ну скомпилил, создался объектник и экзешник - так и надо, а в чем проблема?
че-от не пойму - в чем вопрос то? ну скомпилил, создался объектник и экзешник - так и надо, а в чем проблема?
Просто хочу узнать нориально ли это и зачем этот объектник нужен?
Это правильно! Так работает компилятор. Во-первых компиляция осуществляется в несколько проходов и для каждого модуля программы отдельно в результате получается несколько объектников - по одному для каждого модуля... Затем они собираются в один экзешник путем линковки. То есть объектник нужен только в процессе компиляции и линковки и выполняет роль промежуточного файла, а после сборки экзешника он не нужен :). Правда если у тебя большая программа, а в данный момент ты правишь только один модуль, то остальные модули компилиться не будут, а для линковки будут браться уже готовые объектники, так что они еще и компиляцию ускоряют :)))
Если вы пользуетесь средой разработки, то понятия не имеете, что и сколько раз запускается.
Цитата:
Originally posted by mike
*.obj файл создается компилятором, потом, из одного или нескольких *.obj файлов (а также *.lib) компоновщик (linker) создает *.exe файл.
Если вы пользуетесь средой разработки, то понятия не имеете, что и сколько раз запускается.
*.obj файл создается компилятором, потом, из одного или нескольких *.obj файлов (а также *.lib) компоновщик (linker) создает *.exe файл.
Если вы пользуетесь средой разработки, то понятия не имеете, что и сколько раз запускается.
Имею, имею я понятие. Извольте не беспокоиться.
А вообще спасибо всем за ответы.
Теперь вопрос у меня) В чём отличия между .obj и .exe внутри? Ну вот допустим я написал в текстовом редакторе программу, назвал ее myprogram.cpp, ну и других модулей понаписал которые входят в myprogram.cpp, потом откомпилировал myprogram.cpp, получились файлы .obj. А затем линковщиком уже собираю эти .obj и получается .exe (бинарник, 1 и 0), а .obj - что это? текст как в случае .cpp или 1 и 0 как и exe?
нашел