面试题:自己写个字符串转int(my_atoi)
2013-11-20 23:35
330 查看
引言
常见面试题,手写诸如atoi, strcpy, strcat等的函数。小春面试遇到了写atoi的题,我在这也写个不怎么样的。其实就是把字符每一位换为数都算和出来。手写程序在面试中很重要,需要经常练习,不能依靠IDE以及调试出结构,首先思路要明确,算法要合理。代码
#include "stdio.h" int isDigit(int s)//判断是否是数字 { if(s >= '0' && s <= '9') return 1; else return 0; } int my_atoi(const char* str) { int c; int sum = 0; int sign; while((*str)==' ' || (*str) == '\n' || (*str) == '\r' || (*str) == '\t')//判断是否是空格换行之类的空字符,有则跳过 str++; sign = *str; //符号 if(sign == '-' || sign == '+')//若有符号则跳过 str++; c = (int)*str++; while(isDigit(c)) { sum = 10 * sum + (c - '0'); c = (int)*str++; } if(sign == '-') return -sum; else return sum; } int main() { char* str = "-123"; printf("%d\n",my_atoi(str)); return 0; }
相关文章推荐
- java面试题目总结
- Java面试题目整理。。。
- 黑马程序员-JAVA基础加强之类加载器
- 刚刚加入程序员的行列,希望通过博客的形式记录自己在这个领域的点点滴滴。同时分享自己的心得体会。
- 为什么从百度离职,程序员五件事
- Java面试基础--(出现次数最多的字符串)
- android面试题之问答题
- 黑马程序员_交通灯系统
- 忆往昔(中篇)
- 算法经典面试题
- 黑马程序员--枚举
- 程序员的十层 成长之路
- 【黑马程序员】java高新技术反射
- 程序员的自我修养笔记<关于符号表>
- 华为面试题解析 - 07
- atoi函数的实现——面试
- 上市之后Twitter的入职面试问题
- 黑马程序员-JAVA基础加强之反射
- 员工综合素质面试题整理和收集
- 职业方向