-1

私は以下のコードを持っています

unsigned int headerbytes = 0U;
    headerbytes = (unsigned int*)strtoull(packet_space->header, NULL, 0);

    packetHeader header = deconstructPacketHeader((&headerbytes));

packet_space は char[] で、基本的に unsigned int に変換したい 4 バイトの char 配列です。deconstructPacketHeader() は unsigned int を取りますが、stroutll (私のキャストでは) は double ポインターを返しています。基本的に、 uint の実際の値を取得するにはどうすればよいですか (逆参照を 2 回)、deconstructPacketHeader() に渡すことができますか?

ありがとう!

4

1 に答える 1

1

おそらくあなたは複雑すぎると思います。

試す

unsigned long long headerbytes = 0ULL;
headerbytes = strtoull(packet_space->header, NULL, 0);
packetHeader header = deconstructPacketHeader(headerbytes);
于 2013-04-24T17:28:55.973 に答える