public static int strToInt(char[] str)
已知条件:传递给strToInt的字符串只包含数字和"-"(负号),也就是说它表示一个格式正确的整数值,并且落在int整数的范围内

解决方案 »

  1.   

    int StrToInt(char str[]){       char *p=str;       int sum=0;       bool isMinus=false;       if(*p=='-') isMinus=true;       while(*++p!='\0')       {              sum=sum*10+(*p)-'0';       }       if(isMinus)              return sum*(-1);       return sum;}
      

  2.   

    asc2字符串,这样写好理解点
    int StrToInt(char *Str)
    
    {
    
    assert(Str != NULL);
    
     int num = 0;
    
     char *p = Str;
    
     int flag = 0;
    
     if(*p == '-')
    
     {
    
     flag = 1;
    
     p++;
    
     }
    
     while(*p !='\0')
    
     {
    
     num += (int)(*p - 48);
    
     num *=10;
    
     p++;
    
     }
    
     num /=10;
    
     if(flag)
    
     {
    
     num = -num;
    
     }
    
     return num;
    
     
    
    }
      

  3.   

    还是不明白,帮忙加点注视吧,还有,char *p = Str; 这个*p是什么意思啊
      

  4.   

    你这是什么写法啊,是java吗,java 不能*p的定义吧,还有能写的注解吗,重要行,我好理解啊
      

  5.   

    恩,这样说有道理,但是为什么不看题目啊,用java啊,