-1

ユーザー定義関数に渡すことで const char* に変換した 2 つの整数があります。これらの 2 つの変数をコマンド ライン文字列に次のように追加します。

    "gnome-terminal -x sh -c 'cd; cd project/into_bot/; sh ./matlab_batcher.sh localize \""+num1+","+num2+"\"; exec bash;

非常に基本的なことは知っていますが、データ型が苦手です。これらの 2 つの const char をここに追加するにはどうすればよいですか? このメソッドは、const char* の二項演算子を示すエラーをスローするため、機能していません。初歩的なことですが、助けてください。

num1 と num2 は変数です

4

1 に答える 1

2

num1num2がの場合const char *、 を使用できますstd::string

std::string cmd_line = std::string() +
    "gnome-terminal -x sh -c 'cd; cd project/into_bot/; "
    "sh ./matlab_batcher.sh localize \"" +num1+","+num2+"\"; "
    "exec bash;";

system( cmd_line.c_str() );

意味的にここで起こっていることはstd::string()、文字列を構築するために使用される一時変数を作成し、すべてが構築された後、永続変数を初期化するために使用されますcmd_line

于 2013-01-26T03:17:37.783 に答える