2016-09-22 35 views
-3

使用C++進行編碼。從這些數字開始計數,然後數十等等。

我想從字符串形式的二進制代碼只打印出一個指定的數字。用戶可以指定某個數字位置,並且必須打印該位置的數字。

例如,字符串c =「11011001」,用戶想要第一個位置。輸出必須爲0.

計數指數從0開始,從'1'位表示第一個位置的請求是'十位'數位中的數字。

我不知道如何從這些列開始計數。我嘗試了c.at(),但是從最左邊的數字開始並向右計數。

+2

問自己一個簡單的問題。如果字符串有'N'個字符,並且您希望從字符串末尾開始輸入'I'字符,那麼從字符串的開始處計算該字符索引的數學公式是什麼? –

+0

STL明智,你有沒有聽說過['std :: bitset'](http://en.cppreference.com/w/cpp/utility/bitset)?檢查並查看它是否有用。並請讓自己一個[良好的C++文本](http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list) – WhiZTiM

回答

1

你可以這樣做:

#include <iostream> 
#include <string> 

int main() 
{ 
    std::string str ("11011001"); 
    int postion = 1; 
    std::cout << str[str.length()-position]; 

} 
相關問題