base64解码 C语言实现
时间: 2023-08-16 14:01:39 浏览: 78
在 C 语言中,可以使用标准库函数 `base64.h` 和 `base64.c` 来实现 Base64 解码。以下是一个简单的示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "base64.h"
int main() {
const char* encoded_text = "SGVsbG8gd29ybGQh"; // 输入要解码的 Base64 编码字符串
size_t encoded_length = strlen(encoded_text);
size_t decoded_length = base64_decoded_length(encoded_length);
char* decoded_text = (char*)malloc(decoded_length + 1);
if (decoded_text == NULL) {
printf("内存分配失败!\n");
return 1;
}
int result = base64_decode((unsigned char*)encoded_text, encoded_length, (unsigned char*)decoded_text, &decoded_length);
if (result != 0) {
printf("解码失败:%d\n", result);
free(decoded_text);
return 1;
}
decoded_text[decoded_length] = '\0';
printf("解码结果:%s\n", decoded_text);
free(decoded_text);
return 0;
}
```
请注意,上述示例代码假设您已经拥有 `base64.h` 和 `base64.c` 文件,并将其与您的源代码文件放在同一个目录下。如果没有这两个文件,您可以在网络上找到可用的实现并进行引用。
编译和运行上述代码后,将输出解码结果:"Hello world!"。