Онлайн компилятор C++ с потоком ввода?

Мне нравится онлайн-редактор codepad (поддерживает C++), но я бы хотел использовать некоторые функции scanf, которые невозможны для codepad.

Есть ли какой-нибудь онлайн-компилятор C++, который поддерживает потоки ввода? Это вообще возможно?

5 ответов

Решение

IDEOne поддерживает передачу во входных данных; Вы можете указать это в <textarea>,

[ Отказ от ответственности: я предпочитаю ideone.com (также есть поддержка C++0x) ]

Становясь очень педантичным, вы можете вставить свой ввод в исходный файл, выполнив этот подвох:

http://codepad.org/fjtHRgof

/* just skip the first two (!!!) lines when reading from t.cpp
602.030024387
423.927317911
520.43881927
131.655014874
35.7455352247
548.735653436
714.556123804
876.948673754
379.105540406
885.096900058
192.734103705
116.365922766
363.998415895
216.268387112
958.684513705

*/ // end of fake input

#include <iostream>
#include <fstream>

using namespace std;

int main()
{
    std::ifstream ifs("t.cpp");
    std::cout << ifs.rdbuf() << std::flush;
}

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

Coliru позволяет вам использовать несколько файлов, чтобы вы могли создать файл с вашими данными и сделать что-то подобное для ввода в вашу программу:

g++ -std=c++11 -W -Wall main.cpp && cat /Archive/{{id}}/main.cpp | a.out

Заметка, LWS также имеет приятный интерфейс и поле ввода, но был в read-only на некоторое время, и пока не ясно, вернется ли он в онлайн в ближайшее время, если вообще появится.

Попробуйте http://compileonline.com/ введите свои данные в STDIN

Вы можете попробовать http://optimizedbits.com/. Там вы также можете скомпилировать свой код, предоставив свой собственный поток из нескольких входов.

Только для одного входного потока просто запишите входной. Для нескольких входных тестовых случаев выполните:

input1
<TESTCASE>
input2
<TESTCASE>
....

Относительно возможности ввода потока: See no body строит компилятор самостоятельно. Каждый использует некоторые стандарты, такие как gcc в серверной части. Все веб-сайты онлайн-компиляторов работают на основе архитектуры, включающей следующий поток (пример:C++):

1) read_code_user
2) Save it as variablename.cpp
3) Use a queuing framework. Then execute g++ variablename.cpp. Further, various libraries are utilized which can pipe stdin, stdout and stderr. 
Другие вопросы по тегам