修剪字符数组

trim char array C++

本文关键字:数组 字符 修剪      更新时间:2023-10-16

如何修剪字符数组?

我正在从文本文件中读取这个数组,当它匹配某个字符串时,我要处理它。但它永远不会匹配。我猜是因为它包含一些尾随和前导空格或和'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;
      }
    }

考虑到您没有提到任何其他内容,您总是可以这样做:

将待检查的数组一个字符一个字符地复制到另一个数组中。(这样你还可以检查你需要修剪多少字符):

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