当前位置: 首页 > news >正文

帝国cms网站公告怎么做上海互联网公司排名

帝国cms网站公告怎么做,上海互联网公司排名,青岛网站建设培训,中信建设有限责任公司获奖萌新的学习笔记,写错了恳请斧正。 目录 atoi 模拟实现 atol与atoll(C99起) atof 合法的浮点值 返回值 使用示例 在stdlib.h中还有几个有意思的字符串函数 它们的功能是将字符串开头的数字提取出来 下面我们具体看一看这几个函数吧 …

萌新的学习笔记,写错了恳请斧正。


目录

atoi

模拟实现

atol与atoll(C99起)

atof

合法的浮点值

返回值

使用示例


在stdlib.h中还有几个有意思的字符串函数

它们的功能是将字符串开头的数字提取出来

下面我们具体看一看这几个函数吧

atoi

#include <stdlib.h>
int atoi(const char* string);

atoi,即auto int。舍弃任何空白符,直至找到首个非空白符,然后接收尽可能多的字符以组成合法的整数(可以有负号)表示,并转换之为整数值。如果没有读取到数字,就返回0;如果超出可读取类型范围,那么返回值是未定义的。

使用示例如下:

#include <stdio.h>
#include <stdlib.h>int main(void)
{printf("%i\n", atoi(" -123junk"));printf("%i\n", atoi("0"));printf("%i\n", atoi("junk"));         // 无可进行的转换printf("%i\n", atoi("2147483648"));   // 在 int 范围外
}

输出:

-123
0
0
-2147483648
模拟实现
#include <stdio.h>
#include <ctype.h>
#include <assert.h>int my_atoi(const char* str)
{assert(str);int ret = 0, sign = 1, flag = 1;while (isspace(*str++));str -= 2;while (isdigit(*++str) || '-' == *str && flag || '+' == *str && flag)if (*str == '-')flag = 0, sign = -1;else if (*str == '+')flag = 0, sign = 1;elseflag = 0, ret = 10 * (ret + *str - '0');return sign * ret / 10;
}int main()
{char str[] = "	 -114514";int ret = my_atoi(str);printf("%d", ret);return 0;
}

atol与atoll(C99起)

与atoi功能完全一致,只是变成long和long long类型

#include <stdlib.h>
long atol(const char* string);
long long atoll(const char* string);

atof

atof用于提取的是浮点数(小数形式或者科学计数法)

atof函数使用需要包含stdlib.h和math.h两个头文件

#include <stdlib.h>
#include <math.h>
double atof(const char* string);

函数会舍弃任何空白符,直至找到首个非空白符。然后它会取用尽可能多的字符,以构成合法的浮点数表示,并将它们转换成浮点值。

合法的浮点值

1. 十进制浮点数表达式。它由下列部分组成:

  • (可选) 正或负号
  • 非空的十进制数字序列,可选地包含一个小数点字符(由当前的 C本地环境确定)(定义有效数字)
  • (可选) eE ,并跟随可选的正或负号,以及非空十进制数字序列(以 10 为底定义指数)

2. 十六进制浮点数表达式(C99 起)。它由下列部分组成:

  • (可选) 正或负号
  • 0x0X
  • 非空的十六进制数字序列,选地包含一个小数点字符(由当前的C本地环境确定)(定义有效数字)
  • (可选) pP ,并跟随可选的正或负号,以及非空十进制数字序列(以 2 为底定义指数)

3. 无穷大表达式(C99 起)。它由下列部分组成:

  • (可选) 正或负号
  • INFINFINITY ,忽略大小写

4. 非数(NaN)表达式(C99 起)。它由下列部分组成:

  • (可选) 正或负号
  • NANNAN(char_sequence) ,忽略 NAN 部分的大小写。 char_sequence 只能由数字、拉丁字母和下划线构成。结果是一个静态的 NaN 浮点值。

5. 任何其他可由当前C本地环境接受的表达式

返回值

成功时返回代表string内容的double值

若转换的值在返回值范围外,则返回值未定义

若无可进行的转换,则返回 0.0

使用示例
#include <stdlib.h>
#include <stdio.h>int main(void)
{printf("%g\n", atof("  -0.0000000123junk"));printf("%g\n", atof("0.012"));printf("%g\n", atof("15e16"));printf("%g\n", atof("-0x1afp-2"));printf("%g\n", atof("inF"));printf("%g\n", atof("Nan"));printf("%g\n", atof("1.0e+309"));   // 超出 double 范围printf("%g\n", atof("0.0"));printf("%g\n", atof("junk"));       // 无可进行的转换
}

在某种环境下输出:

-1.23e-08
0.012
1.5e+17
-107.75
inf
nan
inf
0
0

http://www.qdjiajiao.com/news/6289.html

相关文章:

  • wordpress自定义代码在哪里seo快速排名优化公司
  • 个人网站开发教程独立站seo
  • 网站开发教程 布局产品推广方法
  • 合肥网络公司 网站建设网站设计公司哪家专业
  • 深圳东莞的网站建设公司网络营销案例分析论文
  • 张家口网站建设vewan高佣金app软件推广平台
  • 在哪可以做网站品牌广告语经典100条
  • 潮州市建设局官方网站网站建设公司业务
  • 广州做网站制作公司百度公司排名多少
  • 无锡网站建设动态汕头seo优化
  • 天下商机创业网郑州网站建设优化
  • 政府网站 目的seo的优缺点
  • 商业网站备案流程免费推广网
  • 网站服务器怎么做百度知道官网
  • 网站店铺分布图怎么做谷歌广告推广网站
  • 电商网站开发报告万网阿里云域名查询
  • 五金店网站模板seo外包网站
  • 做flash网站框架引擎淘宝指数网站
  • 南宁优化网站收费营业推广策略有哪些
  • 鞍山百姓网招聘信息网站seo工具
  • 浙江网站建设百度排行
  • 辽宁seo衡阳有实力seo优化
  • 政府部门网站建设总结百度推广获客成本大概多少
  • 公司网站制作流程seo虚拟外链
  • 北京移动端网站开发泰安百度推广代理商
  • 商丘做网站的公司有哪些网站制作和推广
  • 门户网站如何帮企业做宣传2022年最新热点素材
  • 怀化建网站广州的百度推广公司
  • 广东广东深圳网站建设seo课程心得体会
  • 商务信息网免费seo网站诊断