Convertsion int en unsigned char

Signaler
Messages postés
97
Date d'inscription
lundi 5 novembre 2007
Statut
Membre
Dernière intervention
20 août 2011
-
Messages postés
3839
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
15 avril 2021
-
Salut tout le monde
j'ai une souci pour convertir un int en unsigned char[]
voir le code c++ qui affiche l'erreur

int a=100;
unsigned char ch[]=(unsigned char[])a;

Merci pour vos aides

2 réponses

Messages postés
97
Date d'inscription
lundi 5 novembre 2007
Statut
Membre
Dernière intervention
20 août 2011

Merci j'ai résolu mon problème avec cast de int en char puis de ce char en unsigned char
voir le code c++:

int i;
     char buffer [256];
     i=100;
     itoa (i,buffer,10);
     printf ("decimal: %s\n",buffer);
 unsigned char reg[256];
 sprintf((char*)reg,"%s",buffer);
  printf ("voila: %s\n",reg);


Mais est ce que je peut allouer de memoire pour les tableau sans ecrire 256 comme l'exemple de malloc
Messages postés
3839
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
15 avril 2021
121
j'ai une souci pour convertir un int en unsigned char[]

Heu... Mais pourquoi tu cherches à faire cela ? Ça n'a pas de sens !

Pour reprendre ton code en plus simple:
#include <stdio.h>

int main(void)
{
  int i = 100;
  unsigned char reg[256];
  sprintf((char*)reg, "%i", i);
  printf ("voila: %s\n",reg);

  return 0;
}


Le même avec un malloc:
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
  int i = 100;
  unsigned char* reg = malloc(256 * sizeof (unsigned char));
  sprintf((char*)reg, "%i", i);
  printf ("voila: %s\n",reg);
  free(reg);

  return 0;
}

_____________________________________________
Historique de mes créations, et quelques articles:[ http://0217021.free.fr/portfolio
http://0217021.free.fr/portfolio]