C++ 的二进制语法与语义 您所在的位置:网站首页 二进制用b表示 C++ 的二进制语法与语义

C++ 的二进制语法与语义

2024-04-12 19:10| 来源: 网络整理| 查看: 265

int i = 0b101010; // binary int i = 052; // octal int i = 42; // decimal int i = 0x2a; // hexadecimal

 

2. 使用 strtol/strtoll/strtoq 函数,可以将一个字符串转换成整数,base 取 2 表示转换成二进制数。 #include long int strtol(const char *nptr, char **endptr, int base); long long int strtoll(const char *nptr, char **endptr, int base);

 我在解密一些二进制数据的时候,用到过这个函数。先用正则表达式每八个数字一拆分 echo A_LONG_BINARY_STRING | sed -r 's/([01]{8})/\1 /g',然后利用空格作间隔符提取数字所代表的 ASCII 码,当然,你也可以用移位运算自己实现每八个数字一读的功能。

#include #include #include int main() { const char* raw = "01110101 01110011 01100101 00100000 01110111 01100101 01100100 01101110 01100101 01110011 01100100 01100001 01111001 00100000 01100110 01101111 01110010 00100000 01110100 01101000 01100101 00100000 01100001 01101110 01110011 01110111 01100101 01110010"; const char* begin; char* end = const_cast(raw); do { begin = end; long int byte = strtol(begin, &end, 2/*base*/); putchar(static_cast(byte)); }while(begin != end); return 0; }

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有