Расширение исходного файла может иметь значение к Вашей системе сборки, например, у Вас могло бы быть правило в Вашем make-файле для .cpp
или .c
файлы, или Ваш компилятор (например, Microsoft cl.exe
) мог бы скомпилировать файл как C или C++ в зависимости от расширения.
, поскольку необходимо предоставить целое имя файла #include
директива, расширение заголовочного файла не важно. Можно включать .c
файл в другом исходном файле, если Вам нравится, потому что это - просто текстовое, включают. Ваш компилятор мог бы иметь опцию вывести предварительно обработанный вывод, который ясно даст понять это (Microsoft: /P
для предварительной обработки в файл, /E
для предварительной обработки к stdout
, /EP
для исключения #line
директивы /C
для сохранения комментариев)
Вы могли бы принять решение использовать .hpp
для файлов, которые только относятся к среде C++, т.е. они используют функции, которые не скомпилируют в C.
Вызов Python с флагом -O:
test.py:
assert(False)
print 'Done'
Вывод:
C:\temp\py>C:\Python26\python.exe test.py
Traceback (most recent call last):
File "test.py", line 1, in <module>
assert(False)
AssertionError
C:\temp\py>C:\Python26\python.exe -O test.py
Done
Используйте python -O
:
$ python -O
>>> assert False
>>>
Запуск в оптимизированном режиме должен сделать это:
python -OO module.py