写在前面:

本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。

目录

  • 一、C/C++标准库执行
    • 1、字符串转数字
    • 2、数字格式化为字符串
  • 二、非标实现
    • 1、十进制数字字符串转数值
    • 2、十六进制数字字符串转数值
    • 3、二、八、十进制间转换,以十进制方式显示
    • 4、整形数字转字符串
    • 5、浮点型数字转字符串
  • 三、其他转换
    • 1、大小端之间的转换

一、C/C++标准库执行

1、字符串转数字

需包含头文件 #include <stdlib.h>

  • double atof(const char *str) :把参数 str 所指向的字符串转换为一个浮点数(类型为 double 型)。

  • int atoi(const char *str) :把参数 str 所指向的字符串转换为一个整数(类型为 int 型)。

  • long int atol(const char *str) :把参数 str 所指向的字符串转换为一个长整数(类型为 long int 型)。

  • double strtod(const char *str, char **endptr) :把参数 str 所指向的字符串转换为一个浮点数(类型为 double 型),并检查结果是否溢出,如果 endptr 不为空,则返回字符串不能转换部分的地址。

  • long int strtol(const char *str, char **endptr, int base) :把参数 str 所指向的字符串转换为一个长整数(类型为 long int 型),并检查结果是否溢出,如果 endptr 不为空,则返回字符串不能转换部分的地址。

  • unsigned long int strtoul(const char *str, char **endptr, int base) :把参数 str 所指向的字符串转换为一个无符号长整数(类型为 unsigned long int 型),并检查结果是否溢出,如果 endptr 不为空,则返回字符串不能转换部分的地址。

2、数字格式化为字符串

需包含头文件 #include <stdio.h>

  • int sprintf(char *str, const char *format, …) :发送格式化输出到字符串 str 中。

  • int snprintf(char *str, size_t size, const char *format, …) :格式字符串并输出 size 个字符长度到 str 中。

    两者的唯一区别是 snprintf()函数多了个 size – 拷贝字节数(Bytes),并且给其后添加一个字符串结束符 \0 ;除此之外,它们所支持的格式化符号都是一样的;format 标签属性是 %[flags][width][.precision][length]specifier。支持以下格式说明符(specifier):

    specifier(说明符) 输出
    c 字符
    d 十进制数
    e 使用 e 字符的科学科学记数法(尾数和指数)
    f 十进制浮点数
    o 有符号八进制
    s 字符串输出到缓冲区,不转换
    x 十六进制数(小写字母)
    X 十六进制数(大写字母)
    p 指针地址
    % 输出百分比符号,不转换

二、非标实现

先来认识一下进制数的表示方式:

二进制(B,Binary),八进制(O,Octal) 十进制(D,Decimalist),十六进制(H,Hex)

1、十进制数字字符串转数值

2、十六进制数字字符串转数值

3、二、八、十进制间转换,以十进制方式显示

注意:参数 2、3中的进制的基数必须其中一个为基数 10。

4、整形数字转字符串

5、浮点型数字转字符串

三、其他转换

1、大小端之间的转换

大小端的知识可以看:https://blog.csdn.net/qq_42992084/article/details/104957438

进制数与字符串之间的转换相关推荐

  1. MFC中将用户输入的表示16进制数的字符串转换成16进制数输出显示(包含1.wstring转成string的方法函数2.用boost库拆分字符串的函数3.字符转16进制数值的函数)

    前期准备: 1.电脑中安装好boost库,我的电脑中安装在C盘根目录下,如下图所示: 2.配置好boost环境变量,如下图所示: 3.开发环境VS2015,工程为MFC应用程序 需要的头文件如下: # ...

  2. byte数组转字符串_VS2012 C# 16进制数与字符串的互换

    #编程基础##我要上头条# 一.字符串转换为16进制字节数组的步骤 1.将字符串按每两个字符拆分并插入逗号为分隔符: 2.将拆分后的字符串分离为字符串数组: 3.将字符串数组转换成字节数组并检测字符是 ...

  3. 16进制数的表示方法及转换

    十六进制数具有下列两个特点: 英文字母A,B,C,D,E,F分别表示数字10-15. 计数到F后,再增加1个,就进位. 十六进制数的基数是16,采用的数码是0.1.2.3.4.5.6.7.8.9.A. ...

  4. 计算机进制数教案,二、数制转换课程导入及其完整教案

    数制与数制间的转换教案 教学过程 师生活动 设计意图 学 科 <计算机组成与工作原理> 课 题 数制与数制间的转换 在日常生活当中我们用到的数字都是用十进制来表示 的.但是在计算机当中,各 ...

  5. 基于MATLAB实现进制数转换

    实现功能 建立数制转换对话框,在左边输入一个十进制整数和一个二到十六之间的转换后进制数,单击"转换"按钮能在右边得到十进制数转换后字符串,单击"退出"按钮退出对 ...

  6. 全国计算机考试进制计算器吗,进制数换算器(十六进制计算器在线)

    求任意进制数之间相互转换的通用方法. 尤其是二进制八进制十进制和十六进. 一个八进制等于三位二进制.一个十六进制等于四位二进制.直接数位数! 请各位多举几个例子吧? (一).二进制.八进制.十六进制转 ...

  7. [转载] python字符串转化为16进制数_python实用知识,数值类型和进制整数的转换

    参考链接: 在Python中将整数int转换为字符串string 喜欢编程,热爱分享,希望能结交更多志同道合的朋友,一起在学习Python的道路上走得更远! 1.数值类型的转换 int()可以将字符串 ...

  8. 16进制数和10进制数之间的转换

    1.16进制转10进制数 parseInt(string, radix) 解析一个字符串并返回指定基数的十进制整数,radix 是 2-36 之间的整数,表示被解析字符串的基数. //将10这个字符指 ...

  9. ByteArray、16进制、字符串之间的转换

    ByteArray.16进制.字符串之间的转换: package fengzi.convert {import flash.utils.ByteArray;public class ByteArray ...

最新文章

  1. 技术大牛养成指南,一篇不鸡汤的成功学实践
  2. Coursera课程Python for everyone:chapter7
  3. Winform中双击DevExpress的TreeList的树形节点怎样获取当前节点
  4. Ansible常用模块详解
  5. python百度网盘_百度网盘突然大调整,网友炸了..
  6. Flink的重启策略
  7. [转]使用wget命令下载Google drive上的文件
  8. inotify 机制
  9. intellij出现dependency ‘xxx‘not found
  10. Bonjour是什么?
  11. iOS 获取当前月份的天数(转)
  12. python在材料方面的应用_python记录材料题带标准答案
  13. oracle清除bin,Oracle recyclebin详解(闪回删除的表)
  14. Vue extend 学习
  15. CSS3的线性渐变(linear-gradient)
  16. 让cp显示进度的脚本
  17. 天锐绿盾技术大讲堂:终端出现红色“+”
  18. 根据IP地址查询物理位置(IP地址定位库)并且查询当前地址的天气信息(中国气象网)
  19. 深度学习--激活函数之sigmoid激活函数
  20. 记录一次破解某加固APP的修改纪录

热门文章

  1. 关于正态总体的样本均值与样本方差的重要结论
  2. windows查看系统信息的方法
  3. NVMe协议详解(三)
  4. 最优控制问题matlab编程实例,第十二章用matlab解最优控制问题及应用实例.ppt
  5. [人脸识别] (VALSE 2017)山世光——人脸识别年度进展
  6. 数学分析教程史济怀练习15.5
  7. 三星Samsung手机平板安装Google Play商店,安装谷歌服务框架,解决闪退奔溃GMS
  8. cartographer 理解
  9. 微信小程序表单框架01
  10. MeasureReady TM 155 开发人员问答,第 2 部分:触摸屏设计和用户测试