Могу ли я создать заголовочный файл в Ideone?

Я думаю, что страница часто задаваемых вопросов Ideone не покрывает это. Я могу написать свой код в main.c или main.cpp соответственно, но смогу ли я создать заголовочный файл и включить его в свой main()?

Например, Overleaf для латекса позволяет мне иметь несколько файлов.

3 ответа

Решение

Вам не нужно строго создавать заголовок для воспроизведения фрагмента кода, который использует заголовок. Вы можете выполнить предварительную обработку вручную и скопировать содержимое заголовка вместо включения.

Однако, чтобы продемонстрировать поведение самого препроцессора, потребуется возможность создать заголовок. Я не думаю, что это возможно на Ideone.


https://wandbox.org/ видимому, имеет надлежащую поддержку нескольких файлов.

На http://coliru.stacked-crooked.com/ это технически возможно путем инъекции из командной строки. Непрактично для длинных заголовков по очевидным причинам.

echo 'inline int foo(){return 42;}' > header.h && g++ main.cpp && ./a.out

демонстрация

Если вы хотите поставить что-то вроде

#include "xxx.h"

int main()
{
    xxx(int yyy));
    return 0;
}

В ideone.com просто удалите #include немного, и вставьте файл в папку #include

т.е.

/* xxx.h header file */

void xxx(int);
#define YYY_DEFAULT 1

/* end of header file */
int main()
{
    xxx(int yyy));
    return 0;
}

Это именно то, что эффективно делает препроцессор.

Могу ли я создать заголовочный файл в Ideone?

Нет.

Кажется, что πάντα ῥεῖ правильно, что Ideone не предоставляет эту функцию.

Тем не менее, Wandbox позволяет включать заголовочный файл, а также исходные файлы (которые могут, например, определять объявленные функции заголовочных файлов).

Пример:

введите описание изображения здесь

Другие вопросы по тегам