一. 数字 转 char*型

1.sprintf函数(适合C和C++)

示例:

   char str[50];
int num = 345;
sprintf(str,"%d",num);

sprintf()函数的功能非常强大,此处只是将int型数字转换成字符串,更多的介绍可见:https://blog.csdn.net/sjf331/article/details/339254 

二.数字 转 string型

1.利用stringstream(只适合于C++)

示例:

   string str;
int num = 345;
stringstream ss; //记住要包含头文件#include<sstream>
ss << num;
str = ss.str();

2.利用to_string(只适用于C++,且必须C++11以及以上)

示例:

   string str;
int num = 345;
str = to_string(num);

三.char* 转 数字

1.atoi以及相关的函数(适合C和C++)

示例:

   char str[] = "345";
int num;
num = atoi(str);

相关的函数包括:C标准库还提供了 atoi, atof, atol, atoll(C++11标准) 函数将字符串转换成int,double, long, long long 型。

2.sscanf函数

示例:

   char str[] = "345";
int num;
sscanf(str,"%d",&num);

sscanf函数的功能用样也很强大,具体用法此处不详述。

四.string 转 数字

1.stoi函数(只适用于C++)

示例:

   string str = "345";
int num;
num = stoi(str);

stoi函数与atoi函数的区别,见:http://www.cnblogs.com/wangkundentisy/p/8511119.html 最底部分。

2.利用stringstream(只适用于C++)

示例:

   string str = "345";
int num;
stringstream ss;
ss << str;
ss >> num;

利用stringstream既可以将string转换成数字,同时也可以将数字转换成string。

需要注意的一点是:一定要搞清楚字符串是char *类型还是string类型。

===================================================================补充===================================

五. string 转 char*

1.利用c_str()函数

示例:

     string str = "345";
char * s1 = new char[10];
strcpy(s1,str.c_str());

c_str()是string类中的成员函数,作用是将string转化成char*,并在结尾处添加"\0",但是此处不能直接使用 = 进行直接赋值,而是要使用strcpy拷贝函数。因为c_str()返回的是一个临时指针,不能对其进行操作。

六. char* 转 string

1.直接利用 = 进行赋值即可。

示例:

char * str = "123";
string ss;
ss = str;

  

C/C++中字符串和数字互转小结的更多相关文章

  1. SQL SERVER 将表中字符串转换为数字的函数 (详询请加qq:2085920154)

    在SQL SERVER 2005中,将表中字符串转换为数字的函数共2个:1. convert(int,字段名)   例如:select convert(int,'3')2. cast(字段名 as i ...

  2. MySQL中字符串与数字比较的坑

    公司项目代码中,某枚举字段数据库表中类型是char(1),在代码中,误以为是TINYINT,所以用数字筛选,后来发现结果不对.发现了一个现象,用数字0筛选会把所有的记录给筛选出来. 经过排查发现是在M ...

  3. java中字符串与数字的互相转换

    import java.text.DecimalFormat; /* * String类中本身提供方法可以将几乎所有的基本类型转换为String类型 * sysout alt+/ 可以直接显示Syst ...

  4. js中字符串转数字的方法

    1.当字符串中是纯数字 例如:var s = '234'; /********** 字符串在运算操作中会被当做数字类型来处理 ***************/ s *= 1; /******* str ...

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

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

  6. C/C++中字符串与数字相互转换

    数字转字符串: 用C++的streanstream: #include <sstream> #Include <string> string num2str(double i) ...

  7. js中字符串转换为数字

    js 字符串转化成数字的三种方法主要有 转换函数.强制类型转换.利用js变量弱类型转换. 1. 转换函数: js提供了parseInt()和parseFloat()两个转换函数.前者把值转换成整数,后 ...

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

    主要有两种方式:C 中能够使用 sprintf 将数字转为字符数组,sscanf 将字符数组转为数字:而在 C++ 中不仅能够使用 C 中的方法,还能够使用 stringstream 实现字符串与数字 ...

  9. c语言中字符串转数字的函数

    ANSI C 规范定义了 atof().atoi().atol().strtod().strtol().strtoul() 共6个可以将字符串转换为数字的函数,大家可以对比学习.另外在 C99 / C ...

随机推荐

  1. 深度学习环境配置Ubuntu16.04+CUDA8.0+CUDNN5

    深度学习从12年开始打响,配置深度学习环境软件一直是一个头疼的问题,如何安装显卡驱动,如何安装CUDA,如何安装CUDNN:Ubuntu官方一直吐槽Nvidia显卡驱动有问题,网上大神也给出了关闭li ...

  2. Seaweedfs-启动脚本

    #!/bin/bash if [ ! -e /sunlight/shell/main.sh ];then echo " [ Error ] file /sunlight/shell/main ...

  3. n!的质因子分解

    其中k为任意质因子,因为a的数值不确定,所有k的值可以任意选择. 以下代码用于求出m!: #include<bits/stdc++.h> LL getpow(LL n,LL k) { LL ...

  4. 自我复制的3D打印机

    RepRap 是人类历史上第一部可以自我复制型的机器. https://reprap.org/wiki/RepRap RepRap 是一部可以生成塑料实物的免费桌面型 3D 打印机.由于 RepRap ...

  5. shutil模块(高级的文件、文件夹、压缩包处理模块)

    shutil 模块 高级的 文件.文件夹.压缩包 处理模块 shutil.copyfileobj(fsrc, fdst[, length])将文件内容拷贝到另一个文件中 import shutil s ...

  6. 深入学习Motan系列(二)——服务发布

    闯关经验: 袋鼠走过了第一关,顺利搭建出了Demo,信心爆棚.不过之后,心想怎么去研究这个框架呢.查了一下,官方文档,好像没什么东西可以研究啊.后来,又搜了搜博客,因为这是微博的框架嘛,所以搜索时用百 ...

  7. maven 总结整理(二)——download source code

    当我们用maven下载jar包时,有时希望下载jar包的源代码,此时可以在pom.xml文件中,进行设置. <build>    <finalName>WebProject&l ...

  8. shell dict 操作

    shell 读取文件,利用dict 合并第一列 . #!/bin/bash result_file="a" declare -A mydict total=`cat ${resul ...

  9. expect脚本实例

    #!/usr/bin/expect //必须写这句,表明使用expect,有些系统可能没有自带,使用yum install expect -y 安装 spawn ssh 192.168.2.128 / ...

  10. bloom-server 基于 rust 编写的 rest api cache 中间件

    bloom-server 基于 rust 编写的 rest api cache 中间件,他位于lb 与api worker 之间,使用redis 作为缓存内容存储, 我们需要做的就是配置proxy,同 ...