标签: binary

将二进制字符串转换为整数字符串c ++

可能重复:
将1s和0s的字符串转换为二进制值

我想将二进制字符串转换为c ++中的整数字符串.例如:

"000000000010""2"

我有以下约束:我不能将此字符串转换为整数类型,然后再将其转换为字符串,因为该二进制字符串可能非常大!

我已经尝试过这样做,用stringstream标志插入二进制字符串std::stringstream::binary然后使用std::dec标志输出内容,但它不起作用

谢谢大家.

c++ string binary decimal

0
推荐指数
1
解决办法
7829
查看次数

C中的二进制分解

我正在编写一些东西来分解训练网站上的二进制数字.我在我的本地编译器上测试了一百次,它运行得很好,但是训练网站告诉我有错误.

(我的代码既不优雅也不高效,尤其是循环,但我分解了代码以了解错误的位置).有人能告诉我是否有错误吗?

#include <stdio.h>
#include <stdlib.h>


//function that displays the greatest power of 2 less than a fixed number N
int residu(int N)

{
    int i;
    int M=2;
    for(i=0;i<N;i++){
        if(M>N){break;}else{M=2*M;i++;}
    }
    return M/2;
}


int main()
{
    int i;

    //N is the input to decompose
    int N;
    scanf("%d",&N);
    //We will search for the greatest power of 2 less than a fixed number N, 
    //than repeating the some process with the residue of N with the greatest power of 2        //less …
Run Code Online (Sandbox Code Playgroud)

c binary

0
推荐指数
1
解决办法
1472
查看次数

如何将二进制文件转换为0和1的字符串,反之亦然

我是C#binary的新手,我需要知道一些事情......

  1. 阅读exe

  2. 将其翻译为字符串(例如10001011)

  3. 修改字符串

  4. 把它写回一个新的exe

我听说过string.Join将二进制文件转换为字符串,但我无法理解.

c# string binary

0
推荐指数
1
解决办法
2132
查看次数

c ++中的通用二进制搜索

我想编写一个模板二进制搜索算法,它可以使用仲裁比较器搜索模板类型QList中的模板类型元素,如下所示:

template<typename T,typename compare_less>
static int binary_search(QList<T>* list, T target) {
    int low = 0;
    int high = list->count()-1;
    while (low <= high) {
        int middle = low + (high - low)/2;
        if (compare_less(*target, *list[middle]))
            high = middle - 1;
        else if (compare_less(*list[middle],*target))
            low = middle + 1;
        else
            return middle;
    }
    return low;
Run Code Online (Sandbox Code Playgroud)

}

现在,我如何正确实现这一点,以使其适用于QDateTime*模板参数?我想调用这样的函数:

int index = binary_search<QDateTime*, ???>(dateTimeList,date);
Run Code Online (Sandbox Code Playgroud)

其中dateTimeList的类型为QList,date的类型为QDateTime*,我真的不知道在问号位置写什么.

有人可以帮我正确实现算法,并告诉我如何用这些参数调用算法?

c++ binary search templates

0
推荐指数
1
解决办法
2544
查看次数

使用PHP显示完整的1-128位十进制到二进制

我知道这种接缝很容易,但我对这种特殊情况有疑问.我已经知道如何使用PHP将十进制转换为二进制,但我想显示完整的位序列,但令人惊讶的是,我不知道如何.

转换必须是这样的:

converting 127(decimal) to binary using PHP = 1111111. the bit sequence is 1-128 for every 
octet(IP Address) so this must output = 01111111 even 128 is not used.
2nd Example:
1(decimal) to binary = 01. Want to display the full 1-128 binary sequence even if
128,64,32,16,8,4,2 is not used it must be like this 00000001 not 01.
Run Code Online (Sandbox Code Playgroud)

这是我的PHP代码:

<?php

        $octet1 = $_POST["oct1"];
        $octet2 = $_POST["oct2"];
        $octet3 = $_POST["oct3"];
        $octet4 = $_POST["oct4"];
        echo decbin($octet1) ," ", decbin($octet2) ," ", …
Run Code Online (Sandbox Code Playgroud)

php binary

0
推荐指数
1
解决办法
1253
查看次数

C#-移位和反转字节数组中的位顺序

我试图从字节数组中获取正确的int。通过POS for .Net从RFIDTag读取字节。(大约需要18位)

二进制格式的字节数组如下:00001110 11011100 00000000 00011011 10000000

我需要摆脱的是:00 00000000 11101101(int = 237)

从原始字节开始将以相反的顺序为以下位:------ 10 11011100 00000000

我一直在看bitArray。Array.Reverse。以及几种移位位的方法。但是我只是无法绕过这个头。

谁能指出我正确的方向?

c# binary byte bits bitarray

0
推荐指数
1
解决办法
8707
查看次数

增加无限二进制计数器

采访编码采访:

如何实现incrementO(1)时间复杂度的无限二进制计数器?

我想要计算最右边的第一个和第二个位置0,但我不知道如何实现它.

"无限计数器"意味着您可以增加无限次(大于MAX_INT).

c# binary bit-manipulation

0
推荐指数
1
解决办法
1770
查看次数

使用C将整数转换为二进制表示吗?

我仍然是编码的初学者,所以遇到了这个问题,我正在尝试将整数转换为二进制表示形式

 #include <stdio.h>
 int main () {
   int x;
   printf("input the number\n");
   scanf("%d",&x);

   while(x!=0) {
     if (x%2)
       printf("1");
     else
       printf("0");
   }
   return 0;
 }
Run Code Online (Sandbox Code Playgroud)

所以它的输出像这样12 = 0011但12 = 1100这是什么问题,我该如何解决?

c binary

0
推荐指数
1
解决办法
6326
查看次数

将字符串保存到python中的二进制文件

我想知道Python编程的一个非常基本的东西,因为我现在是一个非常基本的程序员):如何在Python中将结果(列表,字符串或其他)保存到文件中?我一直在搜索,但我找不到任何好的答案.我正在考虑".write()"方法,但是(例如)它似乎没有使用字符串,我也不知道它应该做什么.所以,我的情况是我有二进制文件,我想编辑,因此我发现很容易将它们转换为字符串,修改它们,现在我想保存它们i)回到二进制文件(jpegs图像)和ii)在我想要的文件夹中.我该怎么办?我需要一些帮助.

UPDATE

这是我正在尝试运行的脚本:

import os, sys

newpath= r'C:/Users/Umberto/Desktop/temporary'
if not os.path.exists (newpath):
    os.makedirs (newpath)

data= open ('C:/Users/Umberto/Desktop/Prove_Script/Varie/_BR_Browse.001_2065642654_1.BINARY', 'rb+')
edit_data= str (data.read () )
out_dir= os.path.join (newpath, 'feed', 'address')

data.close ()


# do my edits in a secon time...

edit_data.write (newpath)

edit_data.close ()
Run Code Online (Sandbox Code Playgroud)

我得到的错误是:

AttributeError: 'str' object has no attribute 'write'
Run Code Online (Sandbox Code Playgroud)

UPDATE_2

我尝试使用pickle模块来序列化我的二进制文件,修改它并在最后保存它,但仍然没有让它工作......这是我到目前为止所尝试的:

import cPickle as pickle
binary= open ('C:\Users\Umberto\Desktop\Prove_Script\Varie\_BR_Browse.001_2065642654_1.BINARY', 'rb')
out= open ('C:\Users\Umberto\Desktop\Prove_Script\Varie\preview.txt', 'wb')
pickle.dump (binary, out, 1)

TypeError                                 Traceback (most recent call last)
<ipython-input-6-981b17a6ad99> in <module>()
----> 1 pprint.pprint …
Run Code Online (Sandbox Code Playgroud)

python string binary save

0
推荐指数
1
解决办法
6562
查看次数

为什么10&(!5)返回零?

我一直在尝试使用c ++跟随代码,我无法弄清楚为什么返回零.

10 & (!5)
我们知道二进制10是1010,5是0101而不是(5)是1010.让我们来看看:

1010  //Which represent 10
1010  //Which represent not(5)
------AND
1010
Run Code Online (Sandbox Code Playgroud)

这应该实际上返回10而不是零.我错了吗 ?

c++ math binary

0
推荐指数
1
解决办法
136
查看次数

标签 统计

binary ×10

c# ×3

c++ ×3

string ×3

c ×2

bit-manipulation ×1

bitarray ×1

bits ×1

byte ×1

decimal ×1

math ×1

php ×1

python ×1

save ×1

search ×1

templates ×1