2014-10-13 2 views
-1

Я работаю над проектом, в котором Если бы я мог включить заголовочный файл во время выполнения, это сэкономит некоторые усилия по программированию. Я об этом говорил, но все напрасно. Мой вопрос:
Можно ли включать заголовочные файлы в программу C во время выполнения?
Если да, то как?
Если нет, то почему?Включая файлы заголовков в C

+1

Какую актуальную проблему вы пытаетесь решить? Заголовочный файл является входом в компилятор, и у вас нет компилятора во время выполнения. –

ответ

1

Не совсем, нет. Файлы заголовков приобретаются компилятором для удовлетворения символов, необходимых во время компиляции.

Если вы просто хотите, чтобы значения не связаны с, вы всегда можете разместить их в файле конфигурации, который читается во время выполнения.

2

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

0

Нет заголовка файлы не могут быть добавлены во время выполнения, как, четыре этапа для программы C, чтобы стать исполняемым являются следующие:

1) Pre-processing 
2) Compilation 
3) Assembly 
4) Linking 

и предварительная обработка является очень первый этап через который проходит исходный код. На этом этапе следующие задачи выполняются:

1) Macro substitution 
2) Comments are stripped off 
3) **Expansion of the included files** 

и наблюдения из промежуточного файла показывает, что мы можем получить, передавая аргумент НКУ в ССАГПЗ -Wall -save-Temps hello.c -О привет:

1) All the macros are expanded in the preprocessing stage. 
2) All the comments are stripped off. 
3) The third observation is that beside the line ‘#include’ is missing and instead of that we see whole lot of code in its place. So its safe to conclude that stdio.h and header files has been expanded and literally included in our source file. 

, а затем составление кода происходит.

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

Смежные вопросы