системная ("команда") строка в строковой задаче - PullRequest
0 голосов
/ 19 апреля 2019

есть проблема с system("command"). Я хочу запустить .exe с некоторыми параметрами, но "B0 P1" не может быть скомпилирован из-за использования "" в командной строке. Любое решение / советы:)?

int main() {
    system ("start C:\\PROGRA~2\\BEL\\Realterm\\realterm.exe FIRST=1 SENDSTR= "B0 P3" ");
}

1 Ответ

3 голосов
/ 19 апреля 2019

Вам нужно экранировать кавычки внутри вашей строки:

int main() {
    system ("start C:\\PROGRA~2\\BEL\\Realterm\\realterm.exe FIRST=1 SENDSTR= \"B0 P3\" ");
}

В c ++ 11 вы также можете использовать строковый литерал R "(...)", если не хотите экранировать символы:

int main() {
    system ( R"(start C:\PROGRA~2\BEL\Realterm\realterm.exe FIRST=1 SENDSTR= "B0 P3")" );
}
...