Пытается понять, как работает #include
. Я читаю, что во время предварительной обработки он просто заменяет собой содержимое указанного файла.
Для проверки я создаю два файла. Файл с именем otherfile
содержит только строку 1234
, а файл test.cpp
содержит
#include otherfile
abcd
Я запускаю g++ -E test.cpp
, и получаю вывод
# 1 "test.cpp"
# 1 "<built-in>" 1
# 1 "<built-in>" 3
# 373 "<built-in>" 3
# 1 "<command line>" 1
# 1 "<built-in>" 2
# 1 "test.cpp" 2
# 1 "./wtf" 1
1234
# 2 "test.cpp" 2
abcd
Откуда берутся остальные строки и что они значат?