【发布时间】:2019-07-18 20:28:07
【问题描述】:
您好,我想知道如何将十六进制数组转换为十进制
这是我的block
uint8_t block[8] = {0xb,0xb,0xb,0xa,0xa,0xa,0xa,0xa};
这是我的代码
#include "stdint.h"
void main() {
uint8_t block[8] = {0xb,0xb,0xb,0xa,0xa,0xa,0xa,0xa};
uint8_t key[16] = {0xa,0xa,0xa,0xb,0xb,0xb,0xb,0xb,
0xa,0xa,0xa,0xa,0xa,0xa,0xa,0xa};
UART1_Init(9600); // Initialisation de l’UART1 à 9600 bps
UART1_Write_Text("message:");
UART1_Write_Text(block);
UART1_Write_Text(" TEA Encryption:");
TEA_Enc(block, key);
UART1_Write_Text(block);
UART1_Write_Text("TEA Decryption:");
TEA_Dec(block, key);
UART1_Write_Text(block);
}
例如,如果我显示 block 我希望得到像 123456 这样的结果
提前谢谢你
【问题讨论】:
-
没有什么可以转换的。一个数字同时存在于所有可能的碱基中。
-
你好 Eugene Sh 你看到
block如果可能的话,我想用十进制表示 -
正如我所说。这是一堆数字,这些数字与您表示它们的方式无关。那就是
uint8_t block[8] = {0xb,0xb...和uint8_t block[8] = {11,11...一模一样 -
您需要澄清您的术语和问题。 “十六进制”是一种符号,其中 16 个符号用于表示以 16 为基数的位置数字系统中的数字。通常使用字符“0”到“9”和“A”到“F”(或其对应的小写字母)作为 16 个符号。也可以使用数字 0 到 15。您的
block是一个包含数字 11 和 10 的数组。“十进制”是一种符号,其中十个符号用于以 10 为底的系统中。将十六进制转换为十进制将产生由数字“0”到“9”组成的数字。它不会是“你好世界”。这些是字符。 -
评论者一直试图说
block不是十六进制的不是,只是你初始化它的方式。它包含数字数据,十进制、二进制、十六进制仅在您如何打印供人类消费的值的上下文中才有意义。
标签: c