c/c++再学习:常用字符串转数字操作

能实现字符串转数字有三种方法,atof函数,sscanf函数和stringstream类。

具体demo代码和运行结果

#include "stdio.h"
#include <iostream>
#include <>
int main()
{
printf("字符串转数字:stof()函数 string转单精度浮点数\n");
std::string stof_str("686.123456789123456");
float stof_val = std::stof(stof_str);
printf("stof_val=%.9f\n", stof_val); printf("字符串转数字:stod()函数 string转双精度浮点数\n");
std::string stod_str("686.123456789123456");
double stod_val = std::stod(stod_str);
printf("stod_val=%.9f\n", stod_val); printf("字符串转数字:atof()函数\n");
char* atof_str = "123.123456789123456";
double atof_val = atof(atof_str);
printf("atof_val=%.9f\n", atof_val); printf("字符串转数字:sscanf()函数\n"); char* strInt = "123456789";
int strInt_num = 0;
sscanf(strInt, "%d", &strInt_num);
printf("strInt_num=%d\n", strInt_num); char* strLong = "1234567890123456789";
long long strLong_num = 0;
sscanf(strLong, "%lld", &strLong_num);
printf("strLong_num=%lld\n", strLong_num); char* strFloat = "1.23456789";
float strFloat_num = 0.0;
sscanf(strFloat, "%f", &strFloat_num);
printf("strFloat_num=%f\n", strFloat_num); char* strDouble = "1.23456789";
double strDouble_num = 0.0;
sscanf(strDouble, "%lf", &strDouble_num);
printf("strDouble_num=%.8lf\n", strDouble_num); printf("字符串转数字:stringstream类\n"); stringstream ss; ss.clear();
printf("stringstream precision=%d\n", ss.precision());
string string_val1 = "1234567890";
int val1 = 0;
ss.str(string_val1);
ss >> val1;
printf("val1=%d\n", val1); ss.clear();
string string_val2 = "1.234567890123456789";
double val2 = 0;
ss.str(string_val2);
ss >> val2;
printf("val2=%.9f\n", val2); }

运行结果

字符串转数字:stof()函数 string转单精度浮点数

stof_val=686.123474121

字符串转数字:stod()函数 string转双精度浮点数

stod_val=686.123456789

字符串转数字:atof()函数

atof_val=123.123456789

字符串转数字:sscanf()函数

strInt_num=123456789

strLong_num=1234567890123456789

strFloat_num=1.234568

strDouble_num=1.23456789

字符串转数字:stringstream类

stringstream precision=6

val1=1234567890

val2=1.234567890

c/c++再学习:常用字符串转数字操作的更多相关文章

  1. 坑之mysql 字符串与数字操作

    select "123"+1 = 124; select "1a23"+1 = 2; select "aa23"+1 = 1; select ...

  2. ios 常用字符串NSString的操作

    //将NSData转化为NSString        NSString* str = [[NSString alloc] initWithData:response encoding:NSUTF8S ...

  3. python基础学习一 字符串的相关操作

    python的字符串 在python中,字符串是以unicode编码的,所以python的字符串支持多语言 对于单个字符的编码,python提供了ord()函数获取字符的整数表示,chr()函数是把编 ...

  4. [Python学习笔记] 字符串类型及操作

    字符串处理 索引:返回字符串中单个字符 <字符串>[M] 切片:返回字符串中一段字符子串 <字符串>[M:N:K] 字符串格式化使用.format()方法

  5. 学习pytho第l六天 常用字符串用法

    name='my name is dream' print(name.capitalize())#首字母大写 print(name.count(‘’a‘’))#判断字符串里有多少个a print(na ...

  6. Python学习之==>常用字符串方法

    1.常用字符串方法 a = '\n 字 符 串 \n\n' b = a.strip() # 默认去掉字符串两边的空格和换行符 c = a.lstrip() # 默认去掉字符串左边的空格和换行符 d = ...

  7. (数据科学学习手札131)pandas中的常用字符串处理方法总结

    本文示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 在日常开展数据分析的过程中,我们经常需要对 ...

  8. Java学习之==>常用字符串方法

    1.定义字符串 // 定义, 为初始化 String str1; // 定义, 并初始化为null String str2 = null; // 定义, 并初始化为空串 String str3 = & ...

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

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

随机推荐

  1. axios设置请求拦截和响应拦截

    首先我们先创建axios实例 const service = axios.create({ baseURL: url, //是用于请求的服务器 URL timeout: 5000, // 请求超时时间 ...

  2. linux同步测试机文件到开发机

    rsync -vrtL --progress /bckup/* root@192.168.1.101:/bckup/ 参考博客: https://www.cnblogs.com/liuquan/p/5 ...

  3. js实现点气球小游戏

    二话不说直接贴代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...

  4. Java基础--二维数组

    1.二维数组的定义 二维数组表示行列二维结构,在栈空间中的二维数组的地址指向堆空间中的一维数组,堆空间中的一维数组的地址又指向一维数组所在的内存空间. 2.二维数组的声明 二维数组声明有3种方式,推荐 ...

  5. EF的默认映射以及如何使用Data Annotations和Fluent API配置数据库的映射

    I.EF的默认映射 上节我们创建项目,通过定义实体类就可以自动生成数据库,并且EF帮我们自动设置了数据库的主键.外键以及表名和字段的类型等,这就是EF的默认映射.具体分为: 数据库映射:Code Fi ...

  6. RabbitMQ 和 Kafka

    ============================RabbitMQ 术语============================RabbitMQ 有很多术语和Kafka不一样, 理解这些术语十分 ...

  7. Window7 定制 Explore中的右键菜单

    win+R 命令  运行 regedit ,打开注册表 在  HKEY_CLASSES_ROOT\*\shell\VisualCode下创建针对文件的新增命令 command 在HKEY_CLASSE ...

  8. react 中使用阿里彩色图标

    1. 不光要引入css ,还要引入js 2. 在需要引入icon的地方添加 <svg className={styles.menuIcon} aria-hidden="true&quo ...

  9. 微软必应地图加载错误:Uncaught TypeError: Microsoft.Maps.Location is not a constructor

    微软必应地图在chrome浏览器加载错误:Uncaught TypeError: Microsoft.Maps.Location is not a constructor, 原因是没有等待地图API加 ...

  10. spring的基于注解的IOC配置

    1.配置文件配置 <?xml version="1.0" encoding="UTF-8"?><beans xmlns="http: ...