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函数输出对应的十六进制表示。

相关推荐
张张努力变强2 分钟前
C++类和对象(一):inline函数、nullptr、类的定义深度解析
开发语言·前端·jvm·数据结构·c++·算法
独自破碎E3 分钟前
Java的CMS垃圾回收流程
java·开发语言
oioihoii9 分钟前
C++线程编程模型演进:从Pthread到jthread的技术革命
java·开发语言·c++
小美单片机12 分钟前
Proteus 报错 Unable to open HEX file ‘..\1、程序\jio\jtd.hex‘. [U1]
c语言·单片机·嵌入式硬件·51单片机·proteus
2501_9413220313 分钟前
道路检测新突破:Cascade R-CNN在COCO数据集上的实战应用详解
开发语言·r语言·cnn
且去填词23 分钟前
深入理解 GMP 模型:Go 高并发的基石
开发语言·后端·学习·算法·面试·golang·go
哪有时间简史30 分钟前
Python程序设计基础
开发语言·python
zh_xuan35 分钟前
kotlin对集合数据的操作
开发语言·kotlin
Hcoco_me36 分钟前
大模型面试题76:强化学习中on-policy和off-policy的区别是什么?
人工智能·深度学习·算法·transformer·vllm