2013-04-14 98 views
0

如何修剪字符數組?修剪字符數組C++

我正在從文本文件中讀取該數組,並且當它匹配某個字符串時,我將對其進行處理。但它永遠不會匹配。我假設,因爲它包含一些尾隨和領先的空格或\和'\ n'

我不知道如何修剪字符數組,但我用它來刪除空格。這有一個問題,當token[0] = {0 0 0 0}這使得它{0000}。所以我不知道下一步該怎麼做..

char a[50] = {0}; 
int j = 0; 

    //Removing spaces or garbage values in token[0] for perfect string match 
    for(int i=0; (unsigned)i<strlen(token[0]) ; ++i) 
    { 
     if((isalnum(token[0][i])) || token[0][i] == 95) 
     { 
     a[j]=token[0][i]; 
     j++; 
     } 
     else 
     { 
     continue; 
     } 
    } 
+6

向我們展示一些代碼。你有什麼嘗試? –

+0

..所以寫一些代碼來照顧這些可能性。 –

+0

是的,我正在努力做到這一點! – dharag

回答

2

既然你沒有提到別的,總是可以做到以下幾點:

通過複製陣列(被選中)到另一個字符數組字符只有需要的字符數...(這樣你也可以檢查你需要修剪多少字符):

a=0; 

while(array1[a] != '\0'){ 
    array2[a] = array1[a]; 
    a++; 
} 

array2[a] = '\0';