您的位置:首页 > 理论基础

计算机笔试题:写一个函数,检查字符是否是整数,如果是,返回其整数值。(或者:怎样只用4行代码编写出一个从字符串到长整型的函数)

2012-04-04 21:55 826 查看
//#include "stdafx.h"
#include <stdlib.h>
#include <stdio.h>
#include <string>
#include <iostream>

using namespace std;

long strtoint(char *str,int length);

int main(int argc, char* argv[])
{
    int i=0;
    char str[100];
    while ((str[i]=getchar())!='0')
    {
        i++;
    }

    long n=strtoint(str,i);

    cout<<n<<endl;

    return 0;
}

long strtoint(char *str,int length)
{
    if(length > 1)
    {
        return str[0]=='-' ? strtoint(str, length-1)*10-(str[length-1]-'0') : strtoint(str, length-1)*10+str[length-1]-'0';
    }
    else
    {
        return str[0]=='-' ? 0 : str[0]-'0';
    }

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐