我是靠谱客的博主 斯文短靴,最近开发中收集的这篇文章主要介绍C++进制转换的两种方法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

进制的转换

stoi函数(<string>)与itoa函数(<stdlib.h>)

/*
原型:int stoi(string str, size_t* idx = 0, int base = 10);
str:欲转换的数据;idx:目标字符串的起始转换地址;base:待转换数据的进制。
功能:把一个字符串按照base进制转换成数字,至str的第一个非法字符结束
*/
//其余进制转十进制
string str = "0A";//16->10
0int val = stoi(str,0,16);// val=10

/*
原型:char* itoa(int value, char *str,int base);
value:欲转换的数字;str:目标字符串的地址;base:将数字转换成base进制的字符串。
功能:把一个数字转换成base进制的字符串。
*/
//十进制转其余进制
//注意:itoa非标准函数
int num = 125;//10->16
char str[10];
itoa(num, str, 16);//str = "7d"

stringstream类(<sstream>)

//十进制转十六进制
stringstream ss;
int decimal = 52;
ss << hex << decimal;// << 读入到流中
int conhex = stoi(ss.str());//
ss.clear();

//十六进制转十进制
stringstream ss1;
string hex_test = "A5";
int decimal2;
ss1.str(hex_test);// ss1 >> hex_test;
sst >> hex >> decimal2;// >> 从流中读出
ss1.clear();

sprintf函数(<stdio.h>)

C语言风格;

最后

以上就是斯文短靴为你收集整理的C++进制转换的两种方法的全部内容,希望文章能够帮你解决C++进制转换的两种方法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(40)

评论列表共有 0 条评论

立即
投稿
返回
顶部