Автор Тема: gcc препроцессор , получить результат в файл  (Прочитано 1491 раз)

Оффлайн alex.dorin

  • Участник
  • *
  • Сообщений: 147
Здравствуйте !
   Как используя gcc и файл на языке C , который содержит директивы
#define
#undef
получить текстовый файл после выполнения этих директив препроцессора ?


Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 20 160
    • Домашняя страница
Андрей Черепанов (cas@)

Оффлайн alex.dorin

  • Участник
  • *
  • Сообщений: 147
Андрей Черепанов !
[alex@comp-xeon-cpu-d7579a LOGIC]$ gcc  -E  inp1.txt
x86_64-alt-linux-gcc: warning: inp1.txt: linker input file unused because linking not done

как направить в файл результат ?


Оффлайн andrew_b

  • Участник
  • *
  • Сообщений: 553
как направить в файл результат ?
gcc -o

Оффлайн alex.dorin

  • Участник
  • *
  • Сообщений: 147
содержимое файла  inp1.txt --

//MANIN AKSIOMA PODSTANOVKI PROBLEMA KONTINUUMA STR 63
// Az Au(Ax((x in u) -> E!y P(x,y,z)) -> (Ew Ay((y in w) <-> Ex((x in u) & P(x,y,z))))

//#define E1bS1(b,a,x)  and(exists([v],S1(v,a,x)),forall([a_,b_],implies(and(S1(a_,a,x),S1(b_,a,x)),equal(a_,b_))))

#define  E1yPP(x,y,z)   and(exists([v],PP(v,y,z)),forall([a,b],implies(and(PP(a,y,z),PP(b,y,z)),equal(a,b))))
#define  S1(u,z)        forall(
  • ,implies(PM(x,u),E1yPP(x,z)))

#define  S2(u,z)        exists([w],forall([y],equiv(PM(y,w),exists(
  • ,and(PM(x,u),PP(x,y,z))))))



#define  PP(x,y,z)      and(PNN(z),implies(PM(x,z),and(PM(y,z),PNEXT(y,z))))
#define  E1yPP(x,z)     and(exists([v],PP(x,v,z)),forall([a,b],implies(and(PP(x,a,z),PP(x,b,z)),equal(a,b))))

formula(forall([z,u],implies(S1(u,z),S2(u,z))), AXsubstPNN).

#undef   E1yPP(x,y,z)
#undef   S1(u,z)
#undef   S2(u,z)
#define  PP(x,y,z)
#define  E1yPP(x,z)


[alex@comp-xeon-cpu-d7579a LOGIC]$ gcc -E inp1.txt -o file.txt
x86_64-alt-linux-gcc: warning: inp1.txt: linker input file unused because linking not done

file.txt  - не создался

Что исправить ?
 

Оффлайн alex.dorin

  • Участник
  • *
  • Сообщений: 147
Андрей Черепанов, спасибо !

Оффлайн andrew_b

  • Участник
  • *
  • Сообщений: 553
Что исправить ?
gcc старается по имени файла определить, какой компилятор использовать. Поэтому, во-первых, переименуйте файл в соответствии с тем языком, который используется. Наверное, это Си: inp1.c.
Во-вторых, при публикации кода на форуме используйте тег code, иначе ваш код форум превращает в нечто нечитаемое.