将 C 字符串转换为二进制表示形式

2023-12-26

在 ANSI C 中,我们如何将字符串转换为二进制字节数组? 所有的谷歌搜索和搜索都给了我 C++ 和其他而不是 C 的答案。

我的一个想法是将字符串转换为 ASCII,然后将每个 ASCII 值转换为其二进制。 (呃!)我知道这是最愚蠢的想法,但我不确定还有其他选择。

我听说过Java中的abt编码功能。我不确定这是否适合相同的目的并且可以被采用到 C 中。

string = "Hello"
bytearr[] = 10100101... some byte array..

如果有人能对此有所启发,那就太好了。

Thanks!


或者您的意思是如何将 C 字符串转换为二进制表示形式?

这是一种可以将字符串转换为二进制表示形式的解决方案。可以轻松更改它以将二进制字符串保存到字符串数组中。

#include <stdio.h>

int main(int argc, char *argv[])
{
    if(argv[1] == NULL) return 0; /* no input string */

    char *ptr = argv[1];
    int i;

    for(; *ptr != 0; ++ptr)
    {
        printf("%c => ", *ptr);

        /* perform bitwise AND for every bit of the character */
        for(i = 7; i >= 0; --i) 
            (*ptr & 1 << i) ? putchar('1') : putchar('0');

        putchar('\n');
    }

    return 0;
}

输入和输出示例:

./ascii2bin hello

h => 01101000
e => 01100101
l => 01101100
l => 01101100
o => 01101111
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 C 字符串转换为二进制表示形式 的相关文章

  • 如何让 Swagger 插件在自托管服务堆栈中工作

    我已经用 github 上提供的示例重新提出了这个问题 并为任何想要自己运行代码的人提供了一个下拉框下载链接 Swagger 无法在自托管 ServiceStack 服务上工作 https stackoverflow com questio
  • 确保 StreamReader 不会挂起等待数据

    下面的代码读取从 tcp 客户端流读取的所有内容 并且在下一次迭代中它将仅位于 Read 上 我假设正在等待数据 我如何确保它不会在没有任何内容可供读取时返回 我是否必须设置低超时 并在失败时响应异常 或者有更好的办法吗 TcpClient
  • 计算 Richtextbox 中所有单词的最有效方法是什么?

    我正在编写一个文本编辑器 需要提供实时字数统计 现在我正在使用这个扩展方法 public static int WordCount this string s s s TrimEnd if String IsNullOrEmpty s re
  • 提交后禁用按钮

    当用户提交付款表单并且发布表单的代码导致 Firefox 中出现重复发布时 我试图禁用按钮 去掉代码就不会出现这个问题 在firefox以外的任何浏览器中也不会出现这个问题 知道如何防止双重帖子吗 System Text StringBui
  • MVC 在布局代码之前执行视图代码并破坏我的脚本顺序

    我正在尝试将所有 javascript 包含内容移至页面底部 我正在将 MVC 与 Razor 一起使用 我编写了一个辅助方法来注册脚本 它按注册顺序保留脚本 并排除重复的内容 Html RegisterScript scripts som
  • ClickOnce 应用程序错误:部署和应用程序没有匹配的安全区域

    我在 IE 中使用 FireFox 和 Chrome 的 ClickOnce 应用程序时遇到问题 它工作正常 异常的详细信息是 PLATFORM VERSION INFO Windows 6 1 7600 0 Win32NT Common
  • 在 LINQ 中按 Id 连接多表和分组

    我想按categoryId显示列表产品的名称组 这是我的代码 我想要我的视图显示结果 Desktop PC HP Red PC Dell Yellow PC Asus Red SmartPhone Lumia 720 Blue 我的组模型
  • 使用 python/numpy 重塑数组

    我想重塑以下数组 gt gt gt test array 11 12 13 14 21 22 23 24 31 32 33 34 41 42 43 44 为了得到 gt gt gt test2 array 11 12 21 22 13 14
  • 当我们想要返回对象的引用时,为什么我们在赋值运算符中返回 *this 而通常(而不是 this)?

    我正在学习 C 和指针 我以为我理解了指针 直到我看到这个 一方面 asterix 运算符是解引用的 这意味着它返回值所指向的地址中的值 而与号 运算符则相反 它返回值存储的地址记忆 现在阅读有关赋值重载的内 容 它说 我们返回 this因
  • 使用 LINQ2SQL 在 ASP.NET MVC 中的各种模型存储库之间共享数据上下文

    我的应用程序中有 2 个存储库 每个存储库都有自己的数据上下文对象 最终结果是我尝试将从一个存储库检索到的对象附加到从另一个存储库检索到的对象 这会导致异常 Use 构造函数注入将 DataContext 注入每个存储库 public cl
  • 在一个平台上,对于所有数据类型,所有数据指针的大小是否相同? [复制]

    这个问题在这里已经有答案了 Are char int long 甚至long long 大小相同 在给定平台上 不能保证它们的大小相同 尽管在我有使用经验的平台上它们通常是相同的 C 2011 在线草稿 http www open std
  • 如何检测表单的任何控件的变化?

    如何检测 C 中表单的任何控件的更改 由于我在一个表单上有许多控件 并且如果表单中的任何控件值发生更改 我需要禁用按钮 我正在寻找一些内置函数 事件处理程序 属性 并且不想为此创建自定义函数 不 我不知道任何时候都会触发任何事件any控制表
  • Qt - ubuntu中的串口名称

    我在 Ubuntu 上查找串行端口名称时遇到问题 如您所知 为了在 Windows 上读取串口 我们可以使用以下代码 serial gt setPortName com3 但是当我在 Ubuntu 上编译这段代码时 我无法使用这段代码 se
  • 如何在 32 位或 64 位配置中以编程方式运行任何 CPU .NET 可执行文件?

    我有一个可在 32 位和 64 位处理器上运行的 C 应用程序 我试图枚举给定系统上所有进程的模块 当尝试从 64 位应用程序枚举 32 位进程模块时 这会出现问题 Windows 或 NET 禁止它 我认为如果我可以从应用程序内部重新启动
  • 如何在 Xaml 文本中添加电子邮件链接?

    我在 Windows Phone 8 应用程序中有一些大文本 我希望其中有电子邮件链接 例如 mailto 功能 这是代码的一部分
  • 等待进程释放文件

    我如何等待文件空闲以便ss Save 可以用新的覆盖它吗 如果我紧密地运行两次 左右 我会得到一个generic GDI error
  • C++ 函数重载类似转换

    我收到一个错误 指出两个重载具有相似的转换 我尝试了太多的事情 但没有任何帮助 这是那段代码 CString GetInput int numberOfInput BOOL clearBuffer FALSE UINT timeout IN
  • 不同类型指针之间的减法[重复]

    这个问题在这里已经有答案了 我试图找到两个变量之间的内存距离 具体来说 我需要找到 char 数组和 int 之间的距离 char data 5 int a 0 printf p n p n data 5 a long int distan
  • 无法接收 UDP Windows RT

    我正在为 Windows 8 RT 编写一个 Windows Store Metro Modern RT 应用程序 需要在端口 49030 上接收 UDP 数据包 但我似乎无法接收任何数据包 我已按照使用教程进行操作DatagramSock
  • 如何从 ODBC 连接获取可用表的列表?

    在 Excel 中 我可以转到 数据 gt 导入外部数据 gt 导入数据 然后选择要使用的数据源 然后在提供登录信息后 它会给我一个表格列表 我想知道如何使用 C 以编程方式获取该列表 您正在查询什么类型的数据源 SQL 服务器 使用权 看

随机推荐

  • 为什么 MySQL 查询几乎总是用大写字母编写

    我见过大多数程序员在编写 MySQL 查询时都使用大写字母 例如 SELECT FROM table WHERE id 1 ORDER BY id DESC 我尝试用小写大写字母编写查询 但它仍然有效 那么不使用小型大写字母有什么特殊原因吗
  • 从 doFilter 方法设置 cookie

    我有一个带有 doFilter 方法的过滤器类 在 doFilter 方法中 我设置一个 cookie 如下所示 HttpServletResponse httpResp HttpServletResponse servletRespons
  • 如何让 pip 在代理服务器后面工作[重复]

    这个问题在这里已经有答案了 我正在尝试使用 python 包管理器 pip 来安装包及其来自互联网的依赖项 然而 我在我的大学里有一个代理 并且已经设置了http proxy环境变量 但是当我尝试安装这样的包时 pip install Tw
  • commitEditingStyle 未触发

    我有一个 UITableView 我试图在编辑模式处于活动状态但 commitEditingStyle 未触发时删除一行 UITableViewCell tableView UITableView tableView cellForRowA
  • 手动调用 viewDidAppear 的正确时间?

    我有一个UITableViewController在我的应用程序中 它直接添加到视图层次结构中 视图出现后 我想滚动到特定的单元格 我的解决方案是调用滚动代码 viewDidAppear 根据苹果的文档 我必须手动调用该方法 如果属于视图控
  • 删除 Seaborn 条形图图例标题

    我使用seaborn绘制分组条形图 如下所示https seaborn pydata org examples factorplot bars html https seaborn pydata org examples factorplo
  • 如何轻松地将基于 XML 的配置文件加载到 Java 类中?

    我有一个简单的 java 类 如下所示 public class Skin implements Serializable public String scoreFontName TahomaBold public int scoreFon
  • Flask 运行 Web 应用程序中的 Sphinx 文档

    我已经在本地构建了静态 Sphinx 文档 使用make html 我现在希望将 Sphinx 文件集成到我的使用 Flask 运行的 Web 应用程序中 在 Flask 运行的应用程序中 我只是想包含一个指向 Sphinx 文档的超链接
  • Blazor 服务器和 SignalR 以及 Azure AD

    我正在使用 Blazor Server Net 5 开发一个 Web 应用程序 在我的索引页面上 我需要显示通过 Azure AD 登录网站的在线用户数量 首先 用户访问 Web 它会被重定向到 Azure AD 一旦用户在 AD 中通过身
  • 查询地理位置附近的事物?

    我有一个查询试图在某个地理位置内查找内容 但它返回的结果有点 奇怪 我之前发布过此帖子 社区帮助我找到了我需要的公式 MySQL中经纬度查询 https stackoverflow com questions 4687312 queryin
  • NSArray(和其他 Cocoa 类型)@property 值

    在调试同事编写的代码的过程中 我偶然发现了以下让我感到困惑的内容 NSMutableArray array NSMutableArray array NSUInteger arrayCount array count 为什么这有效 它也适用
  • 如何让单个小部件在 Django 中设置 2 个字段?

    我得到了一个包含 2 个字段的模型 纬度和经度 现在它们是 2 个 CharField 但我想制作一个自定义小部件以在管理中设置它 正在考虑显示 Google 地图 然后获取标记的坐标 但是我可以用 1 个小部件 单个地图 来设置 2 个不
  • Python中isnumeric和isdecimal的区别

    字符串的 isnumeric 和 isdecimal 函数有什么区别 https www tutorialspoint com python3 python strings htm https www tutorialspoint com
  • 取自 .mp4 的 H.264 解码器配置记录的格式

    我正在检查从 Android 设备录制的 mp4 视频文件中包含的解码器配置记录 有些设备的解码器配置记录中写入了奇怪或不正确的参数 以下是来自 Galaxy Player 4 0 的示例 该示例是不正确的 DecoderConfigura
  • MYSQL 和 Phpmyadmin 没有显示相同的数据库

    我正在运行 XAMMP 我通过 Homebrew 安装了 MYSQLbrew install mysql 然而当我跑步时show databases 登录后在终端中mysql u root 我明白了 Database information
  • 查找 PHP 服务器的可用端口

    PHP 5 4 带有一个用于开发目的的内置服务器 这是我已经等待了几个月的事情 因为到目前为止 我不得不编写一个 PHP 脚本来侦听传入的连接并处理它们 因为我不想惹麻烦 以及安装实际服务器的开销 我要担心的主要事情是 如何分配端口 在我的
  • 如何将现有的nodejs服务器应用程序连接到Azure SQL数据库

    任何人都可以请建议 我有一个在 azure 上运行的现有 Nodejs 服务器 在 Linux 上运行节点 10 14 项目代码位于 github 上 当我推送更改时 它们会自动推送到 azure 我已经通过Azure门户设置了数据库服务器
  • 为什么 Facebook 淹没了我的网站?

    每个半小时我都会收到大量的请求http www facebook com externalhit uatext php http www facebook com externalhit uatext php 我知道这些请求意味着什么 但这
  • Django url 调试器

    我正在开发一个 Django 应用程序 随着时间的推移 URL 不断增长 我现在有很多这样的视图 由于我做了一些改变 一个视图开始出现故障 当我尝试获取时http example com foo edit profile http exam
  • 将 C 字符串转换为二进制表示形式

    在 ANSI C 中 我们如何将字符串转换为二进制字节数组 所有的谷歌搜索和搜索都给了我 C 和其他而不是 C 的答案 我的一个想法是将字符串转换为 ASCII 然后将每个 ASCII 值转换为其二进制 呃 我知道这是最愚蠢的想法 但我不确