Bonjour,

j'aurais besoin de vos lumières pour comprendre quelquechose.
Dans mon code je dois afficher une chaine de caractère où je dois remplacer les caractères non imprimables par leur valeur en octal. (donc pour les char < 32 et >= 127)
le problème est que pour des valeurs < 10 j'obtiens ce que je veux sinon ca merde

ex:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
  char str1[5];
  char str2[6];
  char str3[7];
 
  strcpy(str1, "test");
  str1[1] = 6;
  strcpy(str2, "test");
  str2[1] = 27;
  strcpy(str3, "test");
  str3[1] = 127;
  aff(str1);
  aff(str2);
  aff(str3);
t006st
t033st
t17st au lieu de t177st

ma fonction aff se resume à afficher les caractères imprimables et si jamais il y a une valeur < 32 ou >= 127 je fais appelle a ma fonction qui convertie ce nombre en octal (independament elle marche )
A votre avi les caractères sont tronqués parce que je case dans un char un nombre à 3 digit ou il y a un bug autre part?