Написал я код "привет мир" что бы попробовать vscode на винде (бывший Линуксоид). Поставил gcc через chocolatey. Всё заработало и компилируется без проблем но столкнулся с проблемой. При компиляции Русского языка в консоли vscode всё выводится нормально а когда пытаешься запустить программу из внешнего терминала показывает иероглифы. Пробовал менять кодировку самого cpp и setlocale(), результатов это не дало.
#include <iostream>
int main()
{
//setlocale(LC_ALL, "Ru");
std::cout << "привет" << std::endl;
return 0;
}
вывод в терминале
PS C:\Users\Mirikov\FILES\DEV\x86\test\src> .\main.exe
Р?С?РёР?РчС' Р?РёС?
PS C:\Users\Mirikov\FILES\DEV\x86\test\src> .\main.exe
╨Я╤А╨╕╨▓╨╡╤В ╨╝╨╕╤А
PS C:\Users\Mirikov\FILES\DEV\x86\test\src> .\main.exe
??????
PS C:\Users\Mirikov\FILES\DEV\x86\test\src> .\main.exe
яЁштхЄ
PS C:\Users\Mirikov\FILES\DEV\x86\test\src> .\main.exe
яЁштхЄ
PS C:\Users\Mirikov\FILES\DEV\x86\test\src> .\main.exe
яЁштхЄ
PS C:\Users\Mirikov\FILES\DEV\x86\test\src> .\main.exe
▀р╪╥╒т
Вывод в консоли vscode
PS C:\Users\Mirikov\FILES\DEV\x86\test> & 'c:\Users\Mirikov\.vscode\extensions\ms-vscode.cpptools-1.1.0-insiders2\debugAdapters\bin\WindowsDebugLauncher.exe' '--stdin=Microsoft-MIEngine-In-ylrg4oer.0nl' '--stdout=Microsoft-MIEngine-Out-ryxahtbw.550' '--stderr=Microsoft-MIEngine-Error-bfxvmcaw.hci' '--pid=Microsoft-MIEngine-Pid-b3axenzg.epn' '--dbgExe=C:\ProgramData\chocolatey\bin\gdb.exe' '--interpreter=mi'
Привет мир
PS C:\Users\Mirikov\FILES\DEV\x86\test> & 'c:\Users\Mirikov\.vscode\extensions\ms-vscode.cpptools-1.1.0-insiders2\debugAdapters\bin\WindowsDebugLauncher.exe' '--stdin=Microsoft-MIEngine-In-fkpbfxg1.zn1' '--stdout=Microsoft-MIEngine-Out-dy2bso40.5zz' '--stderr=Microsoft-MIEngine-Error-hflrtswh.dne' '--pid=Microsoft-MIEngine-Pid-x2zf4eil.xqg' '--dbgExe=C:\ProgramData\chocolatey\bin\gdb.exe' '--interpreter=mi'
Привет мир

