Bonjour,
Je rencontre un problème avec strstr que je sais pas résoudre.
Mon but est d'identifier dans une chaine appelée buffer l'emplacement ou se trouve une autre chaine appelée RX_PWR
Comme l'emplacement de RX_PWR peut varier à l'interrieur de buffer, je cherche mettre dans une variable int le début de la position de RX_PWD
Mon code compile bien, mais lorsque je debug ma console m'indique que int pos_pwr est ' out of scope '
Ainsi la valeur du pointeur ou débute RX_PWD ne se remplie pas dans le int.
Pouvez vous m'aider svp ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 unsigned char RX_PWR[]="PWR:"; unsigned char buffer[80]; unsigned char puissance[9]; int pos_pwr, i; ... char* str = buffer; char* str2 = strstr(str, RX_PWR); pos_pwr = str2 - str; // On copie dans la chaine puissance le contenu de PWR + les 5 caractères suivants : for (i=pos_pwr;i<8;i++) puissance[i-pos_pwr] = buffer[i]; puissance[pos_pwr]='\0';
Partager