atof(将字符串转换成浮点型数)
atoi(将字符串转换成整型数)
atol(将字符串转换成长整型数)
strtod(将字符串转换成浮点数)
strtol(将字符串转换成长整型数)
strtoul(将字符串转换成无符号长整型数)
toascii(将整型数转换成合法的ASCII 码字符)
toupper(将小写字母转换成大写字母)
tolower(将大写字母转换成小写字母)

 int atoi(const char *nptr)
{
int c; /* current char */
int total; /* current total */
int sign; /* if '-', then negative, otherwise positive */ /* skip whitespace */
while ( isspace((int)(unsigned char)*nptr) )
++nptr; c = (int)(unsigned char)*nptr++;
sign = c; /* save sign indication */
if (c == '-' || c == '+')
c = (int)(unsigned char)*nptr++; /* skip sign */ total = ; while (isdigit(c)) {
total = * total + (c - ''); /* accumulate digit */
c = (int)(unsigned char)*nptr++; /* get next char */
} if (sign == '-')
return -total;
else
return total; /* return result, negated if necessary */
}

atoi函数源码

 double atof(char s[])   //将字符串s转换成double型的浮点数
{ int i;
int sign;
int flag;
int expn;
double val;
double power; sign = ;
flag = ;
power = 1.0;
expn = ;
for(i = ; isspace(s[i]); ++i)
;
if(s[i] == '-')
sign = -;
if(s[i] == '+' || s[i] == '-')
++i;
for(val = 0.0; isdigit(s[i]); ++i)
val = val * 10.0 + (s[i] - '');
if(s[i] == '.')
++i;
for(; isdigit(s[i]); ++i)
{
val = val * 10.0 + (s[i] - '');
//power = power * 10.0;
++flag;
}
if(s[i] == 'e' || s[i] == 'E') //如果写成s[i++] == 'e' || s[i++] == 'E',if(s[i] == '-')
//则当输入的字符串带有E时,不能正确得到结果,这是因为在一
//个语句中使用两次自增操作,引起歧义
if(s[++i] == '-')
{
++i;
for(; isdigit(s[i]); ++i)
expn = expn * + (s[i] - '');
expn = expn + flag;
power = pow(, expn);
return sign * val / power;
}
else
{
for(; isdigit(s[i]); ++i)
expn = expn * + (s[i] - '');
expn = expn - flag;
power = pow(, expn);
return sign * val * power;
} power = pow(, flag);
return sign * val / power; }

atof函数代码

C库函数——字符串转数字整理的更多相关文章

  1. 剑指Offer面试题:35.将字符串转换为数字

    一.题目:将字符串转换为数字 题目:写一个函数StrToInt,实现把字符串转换成整数这个功能.当然,不能使用atoi或者其他类似的库函数. 二.代码实现 (1)考虑输入的字符串是否是NULL.空字符 ...

  2. C语言字符串与数字相互转换

    在C/C++语言中没有专门的字符串变量,通常用字符数组来存放字符串.字符串是以“\0”作为结束符.C/C++提供了丰富的字符串处理函数,下面列出了几个最常用的函数. ● 字符串输出函数puts. ● ...

  3. Python内置的字符串处理函数整理

    Python内置的字符串处理函数整理 作者: 字体:[增加 减小] 类型:转载 时间:2013-01-29我要评论 Python内置的字符串处理函数整理,收集常用的Python 内置的各种字符串处理 ...

  4. C语言中将字符串转换为数字的方法

    C语言提供了几个标准库函数,可以将字符串转换为任意类型(整型.长整型.浮点型等)的数字.以下是用atoi()函数将字符串转换为整数的一个例子: # include <stdio. h># ...

  5. javascript中字符串常用操作整理

    javascript中字符串常用操作整理 字符串的操作在js中非常频繁,也非常重要.以往看完书之后都能记得非常清楚,但稍微隔一段时间不用,便会忘得差不多,记性不好是硬伤啊...今天就对字符串的一些常用 ...

  6. 【转】C语言字符串与数字相互转换

    在C/C++语言中没有专门的字符串变量,通常用字符数组来存放字符串.字符串是以“\0”作为结束符.C/C++提供了丰富的字符串处理函数,下面列出了几个最常用的函数. ● 字符串输出函数puts. ● ...

  7. C.【转】C语言字符串与数字相互转换

    1.gcvt 把浮点数转成字符串 - CSDN博客.html(https://blog.csdn.net/dxuehui/article/details/52791412) 1.1. 函数名: gcv ...

  8. C/C++中字符串与数字转换

    本文总结了四种字符串和数字相互转换的方法,方法一和方法二是c++中的方法,方法三和方法四是C语言库函数的方法. 方法一:c++11中string中添加了下面这些方法帮助完成字符串和数字的相互转换 st ...

  9. 数字(int)转字符串和字符串转数字(int)

    室友去面试,问了一个字符串转成数字的算法题,室友没搞出来,我心想,这个不是很简单的吗?于是动手在纸上画了画代码.画完后,总感觉哪里不对,最后一个个挖掘,才发现,尼玛,这到处都是坑啊---特此记录一下中 ...

随机推荐

  1. jenkins密码忘记解决

    1.停止jenkins sh /usr/local/tomcat/bin/shutdown.sh 2.找到config.xml [root@test3 hello]# find / -name con ...

  2. Golang gRPC微服务02: helloworld

    安装protobuf 在windows下,直接下载release版本https://github.com/protocolbuffers/protobuf/releases/tag/v3.9.0然后把 ...

  3. centos6.5 单点kafka测试

    一,kafka解压到/usr/local/下后,修改配置文件 vim config/zookeeper.properties 修改如下几行: dataDir=/usr/local/zookeeper/ ...

  4. lua学习笔记3--lua与c#交互

    LuaInterface是C#与Lua连接的桥梁 LuaInterface是一个开源项目工程,内部有两个核心DLL文件: LuaInterface.dll:在C#中操作Lua代码需要依赖该文件; lu ...

  5. C# 关于App.config

    App.config是winfrom等程序的应用程序配置文件,用来存放一些参数. app.config只会在应用程序启动时加载一次. 当程序在运行中修改app.config中的参数是不会生效,必须要重 ...

  6. 【CodeForces - 939A】Love Triangle(模拟)

    Love Triangle Descriptions: 正如你所知道的,没有男性飞机也没有女性飞机.然而,地球上的每一个平面都喜欢另一个平面.地球上有n个平面,编号从1到n,编号i的平面喜欢编号fi的 ...

  7. day36 joinablequeue、多线程理论、多线程的两种使用方式、守护线程、互斥锁、死锁、递归锁、信号量

    1.joinablequeue队列 joinablequeue与queue一样,也是一种队列,其继承自queue,也有queue中的put 与get 方法,但是在joinablequeue中有自己的 ...

  8. Origin

    1.简单的使用 http://wenku.baidu.com/link?url=K1ThI9a-Ws_Rk28K28kBEc9uNRN7k4vHV4pxfieMCaLeA4rGotRAnk8fxCUm ...

  9. Excel小技巧(随机点名)

    如图,想要做一个随机点名的表格,同样可以石头剪刀布的场合,随机选人. 如何做呢? 第一步,填好想要的数据 第二步,在空的位置输入=INDIRECT("A"&RANDBETW ...

  10. Javascript学习笔记二——操作DOM

    Javascript学习笔记 DOM操作: 一.GetElementById() ID在HTML是唯一的,getElementById()可以定位唯一的一个DOM节点 二.querySelector( ...