以下是一个用C语言实现将ASCII字符串转换为十六进制的函数:

#include <stdio.h>
#include <string.h>

void asciiToHex(const char* str, char* hex) {
    int i, j = 0;
    for (i = 0; i < strlen(str); i++) {
        sprintf(hex + j, "%02X", str[i]);
        j += 2;
    }
}

int main() {
    const char* str = "Hello World!";
    char hex[2 * strlen(str) + 1]; // 为十六进制字符串分配足够的空间
    asciiToHex(str, hex);
    printf("ASCII string: %s\n", str);
    printf("Hex string: %s\n", hex);
    return 0;
}

该程序中的asciiToHex函数将输入的ASCII字符串转换为十六进制,并将结果存储在hex数组中。在main函数中,我们定义了一个ASCII字符串str和一个足够大的数组hex来存储转换后的十六进制字符串。最后,我们打印出原始的ASCII字符串和转换后的十六进制字符串。

运行该程序的输出为:

ASCII string: Hello World!
Hex string: 48656C6C6F20576F726C6421
``
用C语言实现一个函数 将ASCII字符串转换为十六进制存放在数组中。

原文地址: https://www.cveoy.top/t/topic/hJSn 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录