Нет, директива include идет своей строкой.
Соответствующей частью стандарта является C11 6.10.2 Source file inclusion
, где он определяет директиву #include
как одну из:
# include <h-char-sequence> new-line
# include "q-char-sequence" new-line
Обратите внимание, что символ новой строки является неотъемлемой частью директивы.
Я не полностью уверен, зачем вам это нужно на одной линии в любом случае. Большинство программ, которые могут выводить текст, могут в любом случае довольно легко вводить новые строки в поток, например:
pax> printf '#include<stdio.h>\nint main(void){return puts("Hi"),0;}' \
...> | gcc -o testprog -xc -
pax> ./testprog
Hi