2014-11-02 33 views
0

對於我正在處理的項目,我想將一個字母轉換爲數字(如A = 20)。所以我希望能夠拿到「AQJD」並將其轉換爲數字。我如何接受用戶輸入的內容並抓取某些元素。如何抓取輸入的某些元素?

東西作爲

char myArray [] = "AQJD" 

簡單,可以抓住像這樣:

myArray[0] // this will return A because A is the 0th element 

,但我怎麼能獲取用戶輸入到像做什麼的上面有什麼。我試圖做到這一點(粘貼下面),但它不會工作。

string x; //assume I included <string> already 
cout << "Please input what you would like to change: " << endl; 
cin >> x; 
char mine [] = x; 
cout << mine[2] << endl; 

有沒有辦法像上面我試過的那樣將變量傳遞給數組?

+0

空間。我認爲使用['std :: getline'](http://www.cplusplus.com/reference/string/string/getline/)可以更好地讀取標準輸入。 – GingerPlusPlus 2014-11-02 21:46:42

回答

1

std::string已經有一個operator[]函數返回指定位置的字符。這是完全一樣的一個普通字符數組:

cout << x[2]; // J 
+0

謝謝!聽起來太簡單而不真實哈哈 – user3377191 2014-11-02 22:52:28

0

您可以使用的std::string.c_str()方法也非常相似:由用戶成爲分隔符輸入

const char *mine = x.c_str(); 
cout << mine[2] << endl;