2009-10-16 2 views
0

Цели: У меня есть список файлов заголовки (около 50 из них), И каждый заголовок-файл имеет несколько массивов с постоянными элементами. Мне нужно написать программу для подсчета элементов массива. И создайте другую форму вывода (которая будет использоваться группой оборудования).заголовка в качестве аргумента

Мое решение: Я включил все 50 нечетных файлов и написал приложение. А потом я сбросил все элементы массива в указанный формат.

Моя среда: Visual Studio V6, Windows XP

Моя проблема: Каждый раз, когда появляется новый набор файлов заголовков, я теперь изменяющих параметры проекта VC++, чтобы указать на новый набор файлов заголовков, а затем перестроить.

Моего вопрос:

Бит-сана, хотя,

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

ответ

2

Standard C и C++ позволяют использовать макрос:

#include SOME_MACRO_HERE 

Расширенного значение SOME_MACRO_HERE сусла посмотрите на директиву #include.

Таким образом, в принципе, можно использовать MSVC эквивалент:

cc -DSOME_MACRO_HERE='<actualheader.h>' sourcefile.c 

Или:

cc -DSOME_MACRO_HERE='"actualheader.h"' sourcefile.c 

Это, кажется, чтобы предоставить вам ответ на ваш первый вопрос пулей.

Я не уверен, что вы можете избежать перекомпиляции - вы можете (возможно) избежать редактирования.

+0

+1 На самом деле я использую что-то вроде вышеуказанного метода. На самом деле, я не редактирую исходный код даже сейчас, я меняю настройки проекта. – Alphaneo

1

Заголовки включены во время компиляции, поэтому нет средств для изменения/добавления заголовков во время выполнения.

Почему бы вам просто не написать короткий и простой скрипт Perl, который будет анализировать заголовки и подсчитывать количество элементов массива?

+0

В конце концов я думаю о некоторых сценариях perl или ruby. Но просто хотел знать, если есть какой-то другой метод. – Alphaneo

0

Фактически я достиг решения, которое работает.

  • Шаг 1: Файл-имена заголовков будут быть предопределены
  • Шаг 2: Заголовки (набор) с различными значениями параметров будет размещен в разных папках
  • Шаг 3: В то время как компиляции, указывают на пути с соответствующими заголовками

решение не то, что я хотел, но все же, это было лучшее, что я мог понять.

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