I have actually this code for an embedded application. I am 1st trying to make it for plain c++ so that I may have concept clear
。C++字母等效數字編碼輸出程序
我有一個數字代碼分配給每個英文字母。我希望我的程序輸出一個句子的等效數字代碼。循環實際上應該迭代句子代碼的每個數字的次數。 Bec我需要爲每個數字的嵌入式應用開啓/關閉引腳。我必須在兩個句子之間加上兩個字母之間的相同字母數字,&之間的時間差。第一,我想爲每個結果代碼的數字輸出簡單的輸出。
這是我的代碼。我已將字符串&分配給字符串數組類型。然後我從字符串數組&中搜索字符的等效數字代碼,將其保存爲字符串類型。現在我想將字符串中的每個數字分配給int &循環。但我在將字符串值分配給int時遇到問題。我沒有太多的C++編程經驗。
編輯 我有麻煩在將字符串轉換爲第一名爲int,&整體確實這種邏輯來解決我的問題似乎罰款。
這是我的代碼,這是我如何解決我的問題。
#include <iostream>
#include <string>
using namespace std;
string texttopattern(char c)
{
//Hello world again
//125-15-123-123-135 1346-135-1235-123-145 1-1245-1-24-1345
string alphabet = "abcdefghijklmnopqrstuvwqyz"; //osv
string code[] = {"1","12","14","145", "15", "124", "1245",
"125", "24", "245", "13", "123", "134",
"1345", "135", "1234", "12345", "1235", "234", "2345",
"136", "1236", "1346", "13456", "1356", "12346"};
int index = alphabet.find(c);
if(index!=-1)
return code[index];
else
return " ";
}
int main()
{
string ord;
getline(cin, ord);
string code="";
for(int i=0; i<ord.length(); i++)
{
code += texttopattern(ord[i]);
}
for(int i=0; i<code.length(); i++) {
int n = code[i]; //assign a single digit value from string to an
//int,string2int assign value is problem here !!
while(n>0){ //loop for n times & manipulate PIN in each iteration
cout<<"loop";
n--; }
//cout<<code[i]<<endl;
}
return 0;
}
而你的問題是......? –
查看http://stackoverflow.com/questions/7663709/convert-string-to-int-c – nouney
@MatsPetersson:將字符串賦給int並檢查我的整體邏輯以解決我的整個問題。我編輯了OP – enterprize