模拟atoi

来源:互联网 发布:linux 查看nat表 编辑:程序博客网 时间:2024/06/07 02:50
typedef enum state{VAILD,INVAILD}STATE;STATE state = VAILD;int my_atoi(const char* str){assert(str);long long ret = 0;int flag = 1;while (isspace(*str)){str++;}if (*str == '-'){flag = -1;str++;}if (*str == '+'){str++;}while (*str){if (isdigit(*str)){ret = ret * 10 + (*str - '0')*flag;if (ret >= INT_MAX || ret <= INT_MIN){ret = 0;break;}str++;}else{state = INVAILD;ret = 0;break;}}return (int)ret;}int main(){printf("%d", my_atoi("-12334"));system("pause");}

0 0
原创粉丝点击