大家好,
           如一个TCHAR 数组 
           TCHAR buff[]={"023d56.9m0"}
          我想把数字和 . 和字母m 提取出来,高手指点一下。谢谢!

解决方案 »

  1.   

    你这是TCHAR吗?分明是char。
    TCHAR buff[] = _T("023d56.9m0");
      

  2.   


    写错了 
     应该是      TCHAR buff[]={L"023d56.9m0"}
      

  3.   


    需要转换成 char 类型吗 
      

  4.   

    你这也不是啊。
    TCHAR分为char和wchar_t。你这是wchar_t,
    判断字母数字都有现成的函数。
      

  5.   

     完全可以直接像操作char那样来判断.
    是否是数字,是否是. 是否是m
      

  6.   

    int _tmain(int argc, _TCHAR* argv[])
    {
    TCHAR buf[]=_T("023d56.9m0");
    TCHAR *desc = (TCHAR*)calloc(sizeof(buf),sizeof(TCHAR));
    for(int i=0,j=0;i<_tcslen(buf);i++)
    {
    if( buf[i] >= '0' && buf[i] <= '9' || buf[i] == 'm')
    {
    desc[j++] = buf[i];
    }
    }
    _tprintf(_T("%s, %s\n"),desc,buf);
    free(desc);
    return 0;
    }