パケット [bytes] をループして結果を変数に入れようとしていますが、変数に入れるために数時間スタックしました。
これは機能しているもので、出力するだけです。出力を変数に入れるために strcat 、 strcpy 、および sprintf を試しましたが、成功しませんでした。何をすべきか提案してください、私は迷っているので、ありがとう:)
i = 54;
do {
printf("%c", Buffer[i]);
i++;
} while(i != Size);
このコードの一部が役立つはずですが、非常に不明確な質問をしたため、実際に何をしようとしているのかを理解するのは困難です。
ところで、ここでわかるようBuffer
に、初期化されていません (実際には、他のすべてが に依存しているため、すべてが に依存していBuffer
ます。出力するデータを取得することを目的としていました。
#include <stdio.h>
int main(int argc, char **argv)
{
const int Size = 100;
unsigned char Buffer[Size];
unsigned char OutBuffer[Size];
unsigned char PrnBuffer[Size*3];
/* I have understanding you tried to output chars to OutBuffer but
you just need to iterate OutBuffer bytes the same way... */
int i = 54;
int j = 0;
do {
sprintf(&(OutBuffer[j]), "%c", Buffer[i]);
/* But why simply not outBuffer[j] = Buffer[i]; ?? */
i++;
j++;
} while(i != Size);
/* And now print this trash... */
for (i = 0; i < j; ++i)
{
sprintf(&(PrnBuffer[i*3]), "%02x ", OutBuffer[i]);
}
printf("%d: %s\n", j, PrnBuffer);
return 0;
}