2014-08-28 40 views
-1

我有2個char數組,它們有不同的大小。處理2個不同大小的數組

我需要從另一個減去一個,但我沒有設法做一個循環(因爲他們有不同的大小)。

這是我寫的東西:在text_in字符

for (i = 0; i < text_counter; i++) 
{ 
    for (j = 0; j <= key_counter; j++) 
    { 
     text_out[i] = text_in[i] - (key[i] - '0'); 
    } 
    j = 0; 
} 

text_counter數量進行計數,key_counter跟蹤key的字符數,答案是在第三陣列是test_out

如果一個數組是BCDEFG,另一個是12結果應該是AACCEE

+1

減去字符串是什麼意思?你能舉一個你有什麼/想要的例子嗎? – Logar 2014-08-28 11:57:19

+0

那些是char數組 如果一個是「BCDE」 ,另一個是「12」 我需要得到「AACC」 – 2014-08-28 12:00:38

+0

逐個字符的減法完全沒有像檢查整個數組是否存在字符,是它? *困惑*。 – unwind 2014-08-28 12:01:23

回答

0

試着這麼做:

j = 0; 
for (i = 0; i < text_counter; i++) 
{ 
    text_out[i] = text_in[i] - (key[j] - '0'); 
    if (j < key_counter) 
     j++; 
    else 
     j = 0; 
} 

編輯:用%@馬特解決方案似乎更好:

for (i = 0; i < text_counter; i++) 
{ 
    text_out[i] = text_in[i] - (key[i % key_counter] - '0'); 
}