广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C语言实现字符串转浮点函数的示例
  • 514
分享到

C语言实现字符串转浮点函数的示例

2024-04-02 19:04:59 514人浏览 薄情痞子
摘要

  字符串不仅可以转换为整数,也可以转换为浮点数,字符串转浮点数函数原型如下: float __cdecl __mingw_strtof (const

  字符串不仅可以转换为整数,也可以转换为浮点数,字符串转浮点数函数原型如下:

     float __cdecl __mingw_strtof (const char * __restrict__, char ** __restrict__);
     double __cdecl __mingw_strtod (const char * __restrict__, char ** __restrict__);

  strtof函数返回值是一个单精度浮点数,strtod返回值是一个双精度浮点数。

  首先来看strtof函数,它的参数有两个。第一个参数指向要解释的以空字符结尾的字节字符串。第二个参数指向数字后的第一个字符。

  该函数首先丢弃尽可能多的空白字符,直到找到第一个非空白字符为止。然后从该字符开始,采用与浮点字面量类似的语法,尽可能多地使用有效的字符,并将其解释为数值。指向最后一个有效字符之后的字符串其余部分的指针存储在函数第二个参数中。

有效的浮点值可以是以下值之一:

十进制浮点表达式。它由以下部分组成:

  • (可选)加号或减号
  • 非空十进制数字序列可选地包含小数点字符(由当前C确定locale)(定义有效数字)
  • (可选),e或者E跟随可选的负号或加号和非空序列的十进制数字(定义指数)

二进制浮点表达式。它由以下部分组成:

(可选)加号或减号

  • 0x0X
  • 非空的十六进制数字序列可选地包含小数点字符(由当前C确定locale)(定义有效数字)
  • (可选),p或者P跟随可选的负号或加号和非空序列的十进制数字(定义指数)

无穷大表达式。它由以下部分组成:

  • (可选)加号或减号
  • INF或者INFINITY无视事件

非数字表达式。它由以下部分组成:

  • (可选)加号或减号
  • NANNAN(char_sequence)忽略该NAN部分的情况。char_sequence只能包含字母数字字符。结果是静态的NaN浮点值。

任何其他可能被当前安装的C接受的表达式 locale

  下面通过一个简单的例子演示strtof函数的用法。

#include <stdio.h>
#include <stdlib.h>

int main(int arGC, char** argv)
{
	char str[30] = "-123.456    5.672451e3  acde";
	char *pEnd;
	float ret1,ret2;

	ret1 = strtof(str, &pEnd);
	ret2 = strtof(pEnd, &pEnd);
	printf("数字1是: %.3f\n", ret1);
	printf("数字2是: %.3f\n", ret2);
	printf("字符串部分是: %s \n", pEnd);

	return 0;
}

  代码运行结果如下:

image.png

  在转换数字的过程中,遇到空白字符函数就会退出。同时函数的第二个参数会存储退出的位置,当再次调用函数的时候,就会接着上次退出的位置继续转换。

strtod函数和strtof函数用法基本一样,可以直接在上面程序的基础上修改。

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char** argv)
{
	char str[30] = "-123.456   5.672451e3  acde";
	char *pEnd;
	double ret1,ret2;

	ret1 = strtod(str, &pEnd);
	ret2 = strtod(pEnd, &pEnd);
	printf("数字1是: %lf\n", ret1);
	printf("数字2是: %lf\n", ret2);
	printf("字符串部分是: %s \n", pEnd);
        
	return 0;
}

  将返回值的类型修改为double类型就可以了,执行结果如下:

image.png

 到此这篇关于C语言实现字符串转浮点函数的示例的文章就介绍到这了,更多相关C语言 字符串转浮点函数内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: C语言实现字符串转浮点函数的示例

本文链接: https://www.lsjlt.com/news/139656.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C语言实现字符串转浮点函数的示例
      字符串不仅可以转换为整数,也可以转换为浮点数,字符串转浮点数函数原型如下: float __cdecl __mingw_strtof (const ...
    99+
    2022-11-13
  • C语言如何把浮点数转换为字符串
    目录把浮点数转换为字符串1、把float/double格式化输出到字符串2、注意事项整型、浮点型和字符串间转换1.整型、浮点型——>字符串2.字符串——>整型、浮点型把浮...
    99+
    2022-11-12
  • C语言怎样把浮点数转换为字符串
    本篇文章为大家展示了C语言怎样把浮点数转换为字符串,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。把浮点数转换为字符串1、把float/double格式化输出到字符串标准的C语言提供了atof函数把字...
    99+
    2023-06-25
  • 学习Go语言文档中的strconv.ParseFloat函数实现字符串转浮点数
    学习Go语言文档中的strconv.ParseFloat函数实现字符串转浮点数Go语言是一种高性能、可靠性强的编程语言,它被广泛应用于网络应用程序开发、云计算平台、分布式系统等领域。在Go语言中,字符串与浮点数之间的转换是开发过程中非常常见...
    99+
    2023-11-03
    Go语言 strconv ParseFloat
  • C语言模拟实现字符串库函数的示例讲解
    目录字符串检验strlenstrcmpstrstr字符串操作strcpystrcat内存操作memcpymemmove字符串检验 strlen 函数原型 /// @brief 返回给...
    99+
    2023-01-13
    C语言字符串库函数 C语言字符串函数 C语言字符串
  • 深入理解Go语言文档中的strconv.FormatFloat函数实现浮点数转字符串
    深入理解Go语言文档中的strconv.FormatFloat函数实现浮点数转字符串,需要具体代码示例Go语言是一门快速、可靠的开源编程语言,具有强大的并发能力和极简的语法。在Go语言中,strconv包是处理基本数据类型与字符串之间转换的...
    99+
    2023-11-03
    strconv FormatFloat 浮点数转换
  • C语言的字符串转换函数怎么用
    这篇“C语言的字符串转换函数怎么用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C语言的字符串转换函数怎么用”文章吧。字符串...
    99+
    2023-06-29
  • C语言实现字符串替换的示例代码
     替换,意思就是用另一个字符串str3来替换str1中所有的str2。替换过程和查找的过程可以合并在一起,在上面循环查找的过程中,每找到一个str2,就把它替换为str3,...
    99+
    2022-11-12
  • 实现C语言常用字符串库函数
    目录strlenstrcpystrcatstrcmp总结strlen 数组长度的计算是通过strlen来的,它的作用就是判断给定的数组元素个数,直到碰到\0结束 函数原型 siz...
    99+
    2022-11-12
  • C语言的字符函数和字符串函数详解
    目录0. 前言1.函数介绍及部分函数模拟实现1.1 strlen模拟实现1.2 strcpy模拟实现1.3 strcat模拟实现1.4 strcmp 模拟实现1.5 str...
    99+
    2022-11-13
  • 怎么在go语言中将字符串转换成浮点数
    怎么在go语言中将字符串转换成浮点数?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。go语言将字符串转换成浮点数的方法:使用ParseFloat()函数ParseFloat(...
    99+
    2023-06-15
  • c语言如何实现字符串反转
    C语言可以通过循环遍历字符串并交换字符的位置来实现字符串的反转。具体步骤如下:1. 首先,定义一个指向字符串的指针。2. 使用`st...
    99+
    2023-09-12
    c语言
  • C语言实现将字符串转换成整数
    目录准备工作1.NULL指针2.空字符串3.空格4.正负号5.非法字符6.越界测试总结这是一个很有意思的问题。请不要把这个问题想的太简单了,考虑问题时应该尽可能的全面一些。请先思考并...
    99+
    2023-05-14
    C语言字符串转整数 C语言 字符串 整数
  • C语言编程C++旋转字符操作串示例详解
    目录旋转字符串字符串左旋题前认知:暴力移位:三步翻转:判断字符串旋转题前认知字符串追加判断旋转字符串 字符串左旋 实现一个函数,可以左旋字符串中的k个字符。 例如: ABCD左旋一个...
    99+
    2022-11-12
  • C语言的字符函数和字符串函数怎么用
    这篇文章主要讲解了“C语言的字符函数和字符串函数怎么用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C语言的字符函数和字符串函数怎么用”吧!一、字符&字符串函数1.strlen--求...
    99+
    2023-06-26
  • C语言实例问题探究字符串函数的应用
    目录一、典型问题一二、典型问题二三、典型问题三四、典型问题四一、典型问题一 下面的程序输出什么?为什么 分析 snprintf 函数本身是可变参数函数,原型如下:int snpri...
    99+
    2022-11-13
  • C语言字符串函数,字符函数,内存函数使用及模拟实现
    目录求字符串长度strlen长度不受限制的字符串函数strcpystrcatstrcmp长度受限制的字符串函数strncpystrncatstrncmp字符串查找函数strstrst...
    99+
    2022-11-13
  • 一起来学习C语言的字符串转换函数
    字符串转整数 字符串转换为整数的函数有两个,他们的函数原型如下: int __cdecl atoi(const char *_Str); long __cdecl atol(...
    99+
    2022-11-13
  • C语言中字符串反转怎么实现
    这篇文章主要介绍C语言中字符串反转怎么实现,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!代码实现#include <stdio.h>#include <string.h>#...
    99+
    2023-06-25
  • C语言实现常用字符串库函数(推荐)
    目录一、实现memcpy二、memmove模拟实现三、strlen的模拟实现 1.计数器方法:2.递归方式:3.利用指针实现:四、strcpy的模拟实现五、strcmp的模...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作