Ok J'ai une question en deux parties sur la conversion d'un élément dans un QByteArray (devrait être un caractère de droit?) En un entier non signé.qbytearray.at() à unsigned int
Voici mon code:
QByteArray data_read_buffer;
unsigned int data_recieved_size = 0;
/* the code below is an external function that populates the QbyteArray. shouldn't be important putting only to show that I assign a value to the byteArray./*
readFromComPortSafe(data_read_buffer);
data_recieved_size = static_cast<unsigned int>((data_read_buffer.at(2)));
Ok. Donc le résultat que je récupère dans data_recieved_size est faux "de temps en temps" je vais dans le débogueur et quand j'inspecte la valeur de data_read_buffer je reçois ceci:
\ 000 \ 003 \ 203 \ 00 \ 205. ... (ect ect nous avec un certain caractère avec tréma)
Lorsque j'inspecte la valeur de data_recieved_size i get 4294967171
donc, ma première question est
Ai-je fait quelque chose de mal avec la conversion de un char à un int non signé?
Ma deuxième question est la suivante:
Qu'est-ce que \ 203 représentent dans le QByteArray Je suppose que je ne comprends pas ce que je regarde?. Je comprends que le type de caractère est un caractère Unicode ???? Je m'attendais à ce que le deuxième élément dans le QByteArray soit 0x83 ou 131. Comment cela se traduit-il en \ 203?
Si quelqu'un pouvait donner un aperçu sur celui-ci, je l'apprécierais.
Merci
Merci. Ça a du sens maintenant. – user254340