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按序存储。

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

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

目录
打赏
0
0
0
0
17
分享
相关文章
基于魏格纳函数和焦散线方法的自加速光束matlab模拟与仿真
本项目基于魏格纳函数和焦散线方法,使用MATLAB 2022A模拟自加速光束。通过魏格纳函数法生成多种自加速光束,并设计相应方法,展示仿真结果。核心程序包括相位和幅度的计算、光场分布及拟合分析,实现对光束传播特性的精确控制。应用领域涵盖光学成像、光操控和光束聚焦等。 关键步骤: 1. 利用魏格纳函数计算光场分布。 2. 模拟并展示自加速光束的相位和幅度图像。 3. 通过拟合分析,验证光束加速特性。 该算法原理基于魏格纳函数描述光场分布,结合数值模拟技术,实现对光束形状和传播特性的精确控制。通过调整光束相位分布,可改变其传播特性,如聚焦或加速。
在 C++中,realloc 函数返回 NULL 时,需要手动释放原来的内存吗?
在 C++ 中,当 realloc 函数返回 NULL 时,表示内存重新分配失败,但原内存块仍然有效,因此需要手动释放原来的内存,以避免内存泄漏。
C++ 多线程之带返回值的线程处理函数
这篇文章介绍了在C++中使用`async`函数、`packaged_task`和`promise`三种方法来创建带返回值的线程处理函数。
179 6
MATLAB脚本与函数
【10月更文挑战第4天】本文介绍了MATLAB脚本与函数的基本概念及编写方法,涵盖脚本和函数的创建、运行及优缺点,通过示例帮助初学者快速上手。同时,文章还涉及数据类型、控制结构、数据可视化、文件操作、错误处理等内容,提供了丰富的示例和学习资源,助力初学者逐步掌握MATLAB编程。
191 3
MATLAB内置函数
【10月更文挑战第6天】本文详细介绍了MATLAB的内置函数和自定义函数,涵盖数学计算、矩阵操作、图形绘制等方面。通过具体代码示例,展示了如何使用内置函数和创建自定义函数,以及它们在性能、灵活性和可读性上的优劣。同时,文章还讨论了函数文件与脚本文件的区别,匿名函数和函数句柄的高级应用,帮助读者更好地利用MATLAB解决复杂问题。
127 1
|
5月前
|
C++
C++ 多线程之线程管理函数
这篇文章介绍了C++中多线程编程的几个关键函数,包括获取线程ID的`get_id()`,延时函数`sleep_for()`,线程让步函数`yield()`,以及阻塞线程直到指定时间的`sleep_until()`。
69 0
C++入门3——类与对象2-2(类的6个默认成员函数)
C++入门3——类与对象2-2(类的6个默认成员函数)
52 3
【C++篇】C++类与对象深度解析(三):类的默认成员函数详解
【C++篇】C++类与对象深度解析(三):类的默认成员函数详解
48 3
详解C/C++动态内存函数(malloc、free、calloc、realloc)
详解C/C++动态内存函数(malloc、free、calloc、realloc)
827 1
C++入门3——类与对象2-1(类的6个默认成员函数)
C++入门3——类与对象2-1(类的6个默认成员函数)
76 1
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等