数字字符串转整型

/* atoi(char s[]) 
 * 传入数字字符串,返回对应整型
 * 改进:可以匹配前置空格、正负号
 * 限制:不能带小数
 */

int atoi(char s[]){
    int i,n,sign;
    n = 0;
//    去除字符串前面的空格
    for(i = 0; g_isspace(s[i]); i ++)
        ;
//    判断是否为负数
    sign = s[i] == '-'? -1 : 1;
//    如果有符号跳过符号
    if(s[i] == '+' || s[i] == '-'){
        i ++;
    }
//    for循环数组进行转换
    for(; g_isdigit(s[i]); i++){
        n = n * 10 + (s[i] - '0');
    }
    return sign * n;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容