2012-02-02 116 views
-2

我在插入字符串變量的文本中遇到問題。字符串插入

string p="http://www.google.com" ; 
system("c:\\progra~1\\intern~1\\iexplore.exe \"http://www.google.com\""); 

我需要一種方法來使用P的不是 「http://www.google.com \」 我試圖

system("c:\\progra~1\\intern~1\\iexplore.exe \%p\""); 

,但它不工作。我對絃樂不太好,所以可能就是這個概率。

+2

在什麼編程語言?你沒有用一個標籤或在你的問題中指定。 – JamieSee 2012-02-02 19:09:08

+1

沒有魔法。在提出編程問題時,請考慮確定語言。 – DwB 2012-02-02 19:09:46

+0

我正在使用C++和c – Transcendental 2012-02-02 19:16:40

回答

1

在C++中,你可以使用+運算符來連接字符串:

system((std::string("c:\\progra~1\\intern~1\\iexplore.exe ") + p).data()); 

在這種情況下,這是一個有點難以閱讀,因此,您最好創建前手的字符串。 一個更好的辦法是使用字符串流:

#include <sstream> 

std::stringstream sstr; 
std::string p = "http://www.google.com"; 
sstr << "c:\\progra~1\\intern~1\\iexplore.exe " << p; 
system(sstr.str().data()); 
+0

不幸的是我使用C++和C ...所以它不起作用。 – Transcendental 2012-02-02 19:14:14

+0

讓我編輯它爲C++ – 2012-02-02 19:26:01

+0

你是最棒的。謝謝:D:D:D:D – Transcendental 2012-02-02 19:56:34

0

讓我們假設C#

string blammy = @"c:\progra~1\intern~1\iexplore.exe"; 
string finalAnswer; 
string pikaPika = @"http://www.google.com"; 

finalAnswer = blammy + " " + pikaPika; 

system(finalAnswer);