一个八个字符的字符串,后面几位为数字或字母,位数不定,剩下的前面几位为零,如何把前面的零去掉?谢谢!

解决方案 »

  1.   

    CString str;
    str = "0000ax50";
    int i; for(i=0; i<str.GetLength(); i++)
    {
    if(str[i] != '0')
    break;
    } str = str.Mid(i);
      

  2.   

    汗颜,用了CString多年,居然没有发现TrimLeft函数有三个版本:
    void TrimLeft( );void CString::TrimLeft( TCHAR chTarget );void CString::TrimLeft( LPCTSTR lpszTargets );和小三一起面壁去了。
      

  3.   

    楼上几位大哥先先谢谢了
    问题还没解决,再帮忙看以下
    字符串先放在
    char* pp;
    提取后结果放在CString m_pntNum;,
    for(i=0; i<strlen(pp); i++)
    {
    if(str[i] != '0')
    {}
    }
    有函数可利用吗 上面我说的不太清楚,见谅!
      

  4.   

    #include <stdio.h>
    #include <stdlib.h>char *ltrim_zero(char *pstr);int main()
    {
        char *str="000a00asdf0032aw00";
        printf("%s",ltrim_zero(str));
    system("pause");
        return 0;
    }char *ltrim_zero(char *pstr)
    {
    while(*pstr++=='0');
    return --pstr;
    }