Онлайн компилятор C++ с потоком ввода?
Мне нравится онлайн-редактор codepad (поддерживает C++), но я бы хотел использовать некоторые функции scanf, которые невозможны для codepad.
Есть ли какой-нибудь онлайн-компилятор C++, который поддерживает потоки ввода? Это вообще возможно?
5 ответов
IDEOne поддерживает передачу во входных данных; Вы можете указать это в <textarea>
,
[ Отказ от ответственности: я предпочитаю ideone.com (также есть поддержка C++0x) ]
Становясь очень педантичным, вы можете вставить свой ввод в исходный файл, выполнив этот подвох:
/* 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.