У меня есть данный простой фрагмент кода, который должен генерировать 128-битный ключ шифрования. Как вывести значения в консоль? Вот код:
#include <stdio.h>
#include <stdlib.h>
#define LEN 16 // 128 bits
void main()
{
unsigned char *key = (unsigned char *) malloc(sizeof(unsigned char)*LEN);
FILE* random = fopen("/dev/urandom", "r");
fread(key, sizeof(unsigned char)*LEN, 1, random);
fclose(random);
}
Чтобы быть более конкретным: в инструкции сказано: «Распечатайте числа».
printf("%hhx",key[i])
в цикле?. - person Jean-François Fabre   schedule 05.10.2019sizeof(unsigned char)
равно 1. - person Jean-François Fabre   schedule 05.10.2019unsigned char key[LEN] ;
было бы более подходящим. В любом случае приведение возвращаемого значения malloc не является ни необходимым, ни лучшей практикой в C. - person Clifford   schedule 05.10.2019