C语言字符串转换为16进制

C语言字符串转换为16进制

cpp 复制代码
将C语言字符串转换为16进制有多种方法,下面我将介绍两种常见的方法。

方法一:使用sprintf函数
```c
#include <stdio.h>

void stringToHex(const char* str) {
    int i;
    for (i = 0; str[i] != '\0'; i++) {
        printf("%02X ", str[i]);
    }
    printf("\n");
}

int main() {
    const char* str = "Hello World";
    stringToHex(str);
    
    return 0;
}

输出结果:

复制代码
48 65 6C 6C 6F 20 57 6F 72 6C 64 

方法二:自定义转换函数

c 复制代码
#include <stdio.h>

void stringToHex(const char* str) {
    int i;
    for (i = 0; str[i] != '\0'; i++) {
        printf("%02X ", (unsigned char)str[i]);
    }
    printf("\n");
}

int main() {
    const char* str = "Hello World";
    stringToHex(str);
    
    return 0;
}

输出结果:

复制代码
48 65 6C 6C 6F 20 57 6F 72 6C 64 

这两种方法都可以将C语言字符串逐个字符转换为对应的16进制表示。第一种方法使用了sprintf函数来格式化输出,第二种方法则是通过强制类型转换将字符转换为无符号字符(unsigned char),然后使用printf函数输出对应的十六进制表示。

相关推荐
whoarethenext几秒前
使用 C/C++的OpenCV 实时播放火柴人爱心舞蹈动画
c语言·c++·opencv
q5673152314 分钟前
IBM官网新闻爬虫代码示例
开发语言·分布式·爬虫
能工智人小辰15 分钟前
Codeforces Round 509 (Div. 2) C. Coffee Break
c语言·c++·算法
kingmax5421200816 分钟前
CCF GESP202503 Grade4-B4263 [GESP202503 四级] 荒地开垦
数据结构·算法
笨笨马甲20 分钟前
附加模块--Qt OpenGL模块功能及架构
开发语言·qt
岁忧21 分钟前
LeetCode 高频 SQL 50 题(基础版)之 【高级字符串函数 / 正则表达式 / 子句】· 上
sql·算法·leetcode
eachin_z1 小时前
力扣刷题(第四十九天)
算法·leetcode·职场和发展
闻缺陷则喜何志丹1 小时前
【强连通分量 缩点 拓扑排序】P3387 【模板】缩点|普及+
c++·算法·拓扑排序·洛谷·强连通分量·缩点
钮钴禄·爱因斯晨1 小时前
Java 面向对象进阶之多态:从概念到实践的深度解析
java·开发语言·数据结构
鸽子炖汤1 小时前
Java中==和equals的区别
java·开发语言·jvm