Как настроить среду, такую ​​​​как сайты конкурентного программирования в сообществе Visual Studio?

Я пытаюсь создать среду, подобную конкурентным онлайн-сайтам (Hackerearth.com, hackerrank.com и ideone.com) в сообществе Visual Studio 2017 для практики кодирования.

Проверьте это https://ideone.com/fuSOVO.

Ниже приведена стандартная структура большинства вопросов по коду C++ в соревновательном программировании.

#include <iostream>
#include <string>
using namespace std;

int main()
{
    int t;
    cin >> t;
    string s;
    while (t--) {
        cin >> s;
        cout << " Hello " << s << "\n";
        cin.get();
    }   
}

input:
5
Sam
Kiara
Victor
Riley
Diva

output:
Hello Sam
Hello Kiara
Hello Victor
Hello Riley
Hello Diva

Почти все конкурирующие сайты программирования используют stdin в качестве ввода по умолчанию и stdout в качестве вывода по умолчанию, как указано выше.

Я использовал это руководство https://www.quora.com/Is-there-a-way-to-compile-and-run-C%2B%2B-in-Sublime-Text/answer/Shubham-Agrawal-131?srid=n9sL для настройки среды в Sublime Text. И он работает отлично. Теперь я хочу настроить то же самое в Visual Studio Community 2017.

Я следовал этому руководству Передача ввода в программу на С++ для отладки в Visual Studio, но я получаю сообщение об ошибке.

'FirstProject.exe' (Win32): Loaded 'F:\Visual Studio\FirstProject\Debug\FirstProject.exe'. Symbols loaded.
'FirstProject.exe' (Win32): Loaded 'C:\Windows\SysWOW64\ntdll.dll'. Cannot find or open the PDB file.
'FirstProject.exe' (Win32): Loaded 'C:\Windows\SysWOW64\kernel32.dll'. Cannot find or open the PDB file.
'FirstProject.exe' (Win32): Loaded 'C:\Windows\SysWOW64\KernelBase.dll'. Cannot find or open the PDB file.
'FirstProject.exe' (Win32): Loaded 'C:\Windows\SysWOW64\msvcp140d.dll'. Cannot find or open the PDB file.
'FirstProject.exe' (Win32): Loaded 'C:\Windows\SysWOW64\vcruntime140d.dll'. Cannot find or open the PDB file.
'FirstProject.exe' (Win32): Loaded 'C:\Windows\SysWOW64\ucrtbased.dll'. Cannot find or open the PDB file.
The program '[3764] FirstProject.exe' has exited with code 0 (0x0).

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


person Kikit    schedule 23.07.2017    source источник
comment
Это не ошибки. Просто говорю вам, что нет PDB файлов, и исходный код может быть загружен для вашего сеанса отладки.   -  person user0042    schedule 23.07.2017
comment
Я очень новичок в визуальной студии. Я не получаю никакого вывода, кроме тех.   -  person Kikit    schedule 23.07.2017
comment
Так в чем тогда твоя проблема?   -  person user0042    schedule 23.07.2017
comment
просто читайте файлы и выводите в файлы в своей программе, почему вы делаете это таким сложным?   -  person Abhinav Gauniyal    schedule 23.07.2017
comment
вот так freopen("input.txt", "r", stdin); правильно ? Я могу использовать это в Visual Studio, но онлайн-редактор не позволяет использовать это. (Может быть, я ошибаюсь и не знаю, как это использовать). Как я уже упоминал, мне приходится менять этот код каждый раз при отправке кода в онлайн-редактор. Надеюсь, ты получишь то, что я действительно хочу. Будет очень полезно, если вы приведете пример.   -  person Kikit    schedule 23.07.2017


Ответы (1)


Добавлять

ввод.txt

в проект и попробуйте это

int main(int argc, char *argv[]) {
try
{
#ifdef _MSC_VER
#pragma warning(push)
#pragma warning(disable: 4996) //4996 for _CRT_SECURE_NO_WARNINGS equivalent
    freopen("intput.txt", "r", stdin);
#pragma warning(pop)
#endif

    int n; // number of workshops
    cin >> n;

}
catch (...) {
    cout << "Error" << endl;
}
#ifdef _MSC_VER
fclose(stdin);
#endif
return 0;
}

#ifdef приведет к тому, что код не будет использоваться компилятором за пределами VS

person CCondron    schedule 24.07.2017