有一个字符窜,以null结尾,其他全部为数字组成,怎么使字符串转化成对应的数字?例如:char a[7];
      a[0]=0;
      a[1]=0;
      a[2]=0;
      a[3]=1;
      a[4]=1;
      a[5]=1;
      a[6]='\0';
怎样可以获得111这个数字呢?谢谢

解决方案 »

  1.   

    char a[7] = "000111";
    int d = atoi(a);
      

  2.   

    int i=0;
    CString str,str1="";
    for(i=0;i<7;i++)
    {
    str.Format("%d",a[i]);
    if(str!="0")
    str1+=str;
    }
    if(str1=="")
    str1="0";
    int a=atoi(str1);
      

  3.   

    a重复了:(
    char a[7];
    a[0]=0;
    a[1]=0;
    a[2]=0;
    a[3]=1;
    a[4]=1;
    a[5]=1;
    a[6]='\0';
    int i=0;
    CString str,str1="";
    for(i=0;i<7;i++)
    {
    str.Format("%d",a[i]);
    if(str!="0")
    str1+=str;
    }
    if(str1=="")
    str1="0";
    i=atoi(str1);
      

  4.   

    StrToIntHeader shlwapi.h 
    Import library shlwapi.lib 
      

  5.   

    char a[7];
    a[0]=0;
    a[1]=0;
    a[2]=0;
    a[3]=1;
    a[4]=1;
    a[5]=1;
    a[6]='\0';                  int youint = atoi(a);就可以
      

  6.   

    #include <math.h>
    int main(int argc, char* argv[])
    {
    char a[7];
    a[0]=0;
    a[1]=0;
    a[2]=0;
    a[3]=2;
    a[4]=1;
    a[5]=1;
    a[6]='\0'; const int nCount = 7;
    int i,j;
    int nTotal = 0;
    int nLen;

    for(i = 0; i < nCount; i++)
    {
    if(a[i] > 0) break;
    }
    nLen = nCount - i -1; for(j = i; j < nCount; j++)
    {
    nTotal +=  pow(10,nLen -1) * a[j];
    nLen--;
    }

    return 0;
    }
      

  7.   

    呵呵,怎么那么多人说atoi可以啊?a根本不是一个字符串,如果看成字符串的话,现在等于""
      

  8.   

    int i;
    long result=0;
    for(i=0;i<7;i++)
    {
      result=result*10+a[i];
    }