利用栈实现整型多进制转换

原创 2012年03月22日 11:08:47
#include<iostream>
#include<stack>
#include<string>
using namespace std;
void Multioutput(int num,int b)
{
	string numlist="0123456789ABCDEF";
	stack<char>st;
	while(num)
	{
		st.push(numlist[num%b]);
		num=num/b;
	}
	while(!st.empty())
	{
		cout<<st.top();
		st.pop();
	}
	cout<<endl;
}
int main()
{
	int num=123;
	int b;
	while(cin>>b&&b)
	{
		Multioutput(num,b);
	}
	return 0;
}

关于栈中为什么pop元素没有返回值,而是使用top来返回元素的值,这里要做一下说明,如果pop返回栈顶部的元素,如果按值返回则会调用复制构造函数,从而造成很大的开销。而按引用返回,则必须将该元素存储到动态内存中,因为pop要将元素删除,如果不另开辟内存是不行的,但是除非开辟的动态内存最后被删除,否则会造成内存泄露。

Thinking in java 读书笔记(一、静态导入,多进制转换API)

因为有java基础的,所以跳过了一些指导的章节,而且记录的也不会很全面,仅仅是记录下不足的java基础。 一、 使用静态导入可以使被导入类的静态变量和静态方法在当前类直接可见,...

链栈的多进制应用

此程序应用上个程序改造编写的。 #include using namespace std; #include #define ERROR 0 #define OK    1 typedef str...
  • avrsam
  • avrsam
  • 2011年08月02日 20:22
  • 246

多进制转换工具

  • 2017年11月22日 13:34
  • 162KB
  • 下载

多进制转换组件示例程序(源码)

  • 2006年03月16日 00:00
  • 470KB
  • 下载

linux C++字符串 //去除\r\n //字符串分割 /字符串转化为大写格式 //将字符串转换为long long //将字符串(八进制)转化为无符串整型

#include //unix环境编程所需要的头文件 #include //一些类型 #include #include #include #include //fcntl的头文件 #in...

多进制转换

  • 2016年02月19日 17:27
  • 40KB
  • 下载

(基础四)进制转换,输出整型数值低四位二进制数据

public class LowFourBit { public static void main(String[] args) { //十进制转换成二进制输出,即输入一个十进制数...

多进制LDPC码_16QAM调制

GF(q)域的多进制LDPC的如果跟相应的q阶调制相结合,会简化调制解调方式并且对译码性能...

多进制神经CPU的设计构想图纸

理论上可以有无数根线,环境需要超导。可低温超导实现cpu运算。 存储器单元为多进制,如FFFFH可表达65535十进制数据。 整体CPU框架图是由N个这样的单元组成,行成一个神经网络。 6553...
  • xym5366
  • xym5366
  • 2011年11月06日 16:40
  • 679

多进制LDPC码的译码算法比较

对多进制LDPC码学习了一年了
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:利用栈实现整型多进制转换
举报原因:
原因补充:

(最多只允许输入30个字)