C++-十进制转二进制(matlab-dec2bin函数)

简介: C++-十进制转二进制(matlab-dec2bin函数)

场景需求

      十进制转二进制经常用到,比如处理ip和子网掩码数据时,而且这可以加快运算速度,编程时更可以减少时间复杂度。

      话不多说,下方为具体实现函数和测试代码。

功能函数代码

/**
 * @brief dec2bin                          十进制转二进制
 * @param num                              十进制数字
 * @param input                            二进制字符
 * @return                                 
 */
void dec2bin(int num, vector<char> &input)
{
  for (int i = 0; i < 8; ++i)
  {
    input.push_back((num & 1)+'0');
    num = num >> 1;
  }
}

C++测试代码

#include <iostream>
#include <vector>
using namespace std;
/**
 * @brief dec2bin                          十进制转二进制
 * @param num                              十进制数字
 * @param input                            二进制字符
 * @return                                 
 */
void dec2bin(int num, vector<char> &input)
{
  for (int i = 0; i < 8; ++i)
  {
    input.push_back((num & 1)+'0');
    num = num >> 1;
  }
}
int main()
{
  int num;
  cout << endl << " please input a number:" << endl << " ";
  cin >> num;
  vector<char> test;
  dec2bin(num, test);
  cout << " ";
  for (auto i=test.end();i!=test.begin();--i)
  {
    cout << *i ;
  }
  return 0;
}

测试效果

图1 计算结果图

      如上图所示,任意输入一个数字,函数会将该十进制数字转换为二进制字符,字符用vector按序存储。

      如果函数有什么可以改进完善的地方,非常欢迎大家指出,一同进步何乐而不为呢~

      如果文章帮助到你了,可以点个赞让我知道,我会很快乐~加油!

相关文章
|
21天前
|
编译器 C++ 容器
【C++】String常见函数用法
【C++】String常见函数用法
13 1
|
29天前
|
C++
c++常见函数及技巧
C++编程中的一些常见函数和技巧,包括生成随机数的方法、制表技巧、获取数字的个位、十位、百位数的方法、字符串命名技巧、避免代码修改错误的技巧、暂停和等待用户信号的技巧、清屏命令、以及避免编译错误和逻辑错误的建议。
18 6
|
29天前
|
存储 C++
c++学习笔记05 函数
C++函数使用的详细学习笔记05,包括函数的基本格式、值传递、函数声明、以及如何在不同文件中组织函数代码的示例和技巧。
27 0
c++学习笔记05 函数
|
1月前
|
数据建模 Python
MATLAB - mpcobj = mpc(model,ts,P,M,W,MV,OV,DV) 函数(上)
MATLAB - mpcobj = mpc(model,ts,P,M,W,MV,OV,DV) 函数
30 7
|
1月前
|
算法 数据建模 Python
MATLAB - mpcobj = mpc(model,ts,P,M,W,MV,OV,DV) 函数(下)
MATLAB - mpcobj = mpc(model,ts,P,M,W,MV,OV,DV) 函数
37 3
|
1月前
|
Python
【Python】实现MATLAB中计算两个矩形相交面积的rectint函数
Python中实现MATLAB中rectint函数的方法,该函数用于计算两个矩形相交区域的面积,并通过定义Rectangle类和calc_area函数展示了如何计算两个矩形的交集面积。
27 1
|
28天前
|
存储 C++
【C/C++学习笔记】string 类型的输入操作符和 getline 函数分别如何处理空白字符
【C/C++学习笔记】string 类型的输入操作符和 getline 函数分别如何处理空白字符
30 0
|
1月前
|
Dart 编译器 API
Dart ffi 使用问题之在C++线程中无法直接调用Dart函数的问题如何解决
Dart ffi 使用问题之在C++线程中无法直接调用Dart函数的问题如何解决
|
1月前
|
存储 算法 搜索推荐
【C++】类的默认成员函数
【C++】类的默认成员函数
|
1月前
|
JavaScript C++
【C++ visual studio】解决VS报错:error C2447: “{”: 缺少函数标题(是否是老式的形式表?)【亲测有效,无效捶我】
【C++ visual studio】解决VS报错:error C2447: “{”: 缺少函数标题(是否是老式的形式表?)【亲测有效,无效捶我】