iT邦幫忙

0

如何在c++的system( ) 函式中放入變數

最近想要使用c++ system() 函式來開啟使用者輸入進來的字串檔名,原本以為只要system("./"+filename)就好了,請問有沒有解法。

0
EN
iT邦研究生 4 級 ‧ 2021-07-28 22:24:03

建議發問前先嘗試 Google 一下,這個答案蠻好找的(?)


// https://www.796t.com/post/NXQ3MWk=.html

#include <iostream>
#include <windows.h>
using namespace std;

int main()
{
    cout<<"name the app u want to open";

    string app;
    cin>>app;

    const string cmd = "start " + app;

    system(cmd.c_str()); // <-- Use the .c_str() method to convert to a c-string.
    return 0;
}
codingcat iT邦新手 5 級 ‧ 2021-07-29 10:14:59 檢舉

感謝

0
CWKSC
iT邦新手 5 級 ‧ 2021-07-30 15:11:59

可以用 sprintf

https://www.cplusplus.com/reference/cstdio/sprintf/

#include <cstdio>

int main() {
   char command[128];
   char fileName = "meow.txt";

   sprintf(command, "./%s", fileName);
   system(command);
   
   return 0;
}

我要發表回答

立即登入回答