atoi函数


实现了一个简单的atoi函数,包括对正负的确认,整数大小,非法输入


反反复复

1                                                                                                                      
  2 #include <iostream>
  3 #include <string.h>
  4 #include <stdio.h>
  5 using namespace std;
  6 #define INT_MAX 65535
  7 
  8 int funtion(char *str)
  9 {
 10     if(NULL==str)
 11         return -1;
 12 
 13     char *cur=str;
 14     bool flag=true;
 15     if(*cur=='+')
 16         cur++;
 17     if(*cur=='-')
 18     {
 19         cur++;
 20         flag=false;
 21     }
 22     int value=0;
 23     while(*cur !='\0')
 24     {
 25         if(*cur>='0' && *cur<='9')
 26             value=value*10+((*cur)-'0');
 27         else
 28             break;
 29         if(value>INT_MAX)
 30             break;
 31         cur++;
 32     }
 33     if(!flag)
 34         value=-value;
 35     return value;
 36 }
 37 int main()
 38 {
 39     char *ptr=new char;
 40     int value=0;
 41 
 42     while(1)
 43     {
 44         cout<<"please enter string :";
 45         fflush(stdout);
 46         cin>>ptr;
 47         if(strcmp(ptr,"quit")==0)
 48         {
 49             cout<<"quit"<<endl;                                                                                      
 50             break;
 51         }
 52         value=funtion(ptr);
 53         cout<<"整数数字:"<<value<<endl;
 54     }
 55     delete ptr;
 56     return 0;
 57 }  


你可能感兴趣的:(atoi)