0
スペースを含む文字列を含むパラメータを持つlinux std ::システムコールを呼び出す必要があります。 argc/argvを使って正しく処理するために、二重引用符で渡したいと思います。二重引用符で囲まれたパラメータを持つstd :: systemを呼び出す
std :: string cmdline = "myprogram -d \"私はひどいです。
私はこの文字列を私が良い結果を得る場合。
私はstd::system(cmdline)
に送信し、私は MYPROGRAMを得る-ef psのを見て、私は私がMYPROGRAMのための単一のパラメータとして「私は文字列だ」維持することができますどのように文字列
だ-d?
は、私はこのプログラムをテストする、++グラムを使用して、Debianの上だと、あなたがCINを追加し、あなたのプログラムをテスト済み – Dani
を知らせ、見えます>>最後にps -efを実行してください。あなたは正しいです - それは何らかの理由でps -efが文字列から ""を取り除きますが、argvはそれを単一のパラメータとして扱います。 – Dani
@ダニ私はなぜ'ps -ef'dont show '""'は "それ自体が議論ではないと思う。 – ikh