問題タブ [uint8t]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
665 参照

c++ - unsigned int (uint8, 16, 32) を変数に格納

uint8_t (uint_16 または 32 にも変更される可能性があります) を文字列にフォーマットして保存したいと思います。それらを16進数としてフォーマットする必要があり、フォーマットとともに保存したいと考えています。私はこのようなものを持っています(コアのみ):

出力例: Uint8_t: C8 4A 00 0D

印刷する代わりに、正しいフォーマットで保存する必要があります。例として結果が得られた場合に最適です。 string str = "C8 4A 00 0D" これに対する方法はありますか? よろしくお願いします!

編集済み

改めまして、分かったようです。私は C++ を使用しています。申し訳ありませんが、タグを間違えたと思います。g++ コンパイラを使用しています。電報はそれほど重要ではありません(はい、適切なサイズです。ここで注意しなかっただけです-「コアコード」)。最後に sprintf を使用しましたが、これは私にとっての解決策のようです (すべての詳細を説明するには時間がかかりすぎるため、これも単なるコアです): 頭を悩ませないでください。私はコーディングが得意ではありません。

出力結果: Uint8_t: C8 4A 00 0D それが最善の解決策ではないことはわかっていますが、必要なものに最も近いものです。また、tmp にも保存されるようになったため、一度印刷するだけでなく、後で使用することもできます。だからこそ必要。

編集済み

いくつかのより良いバージョン:

0 投票する
1 に答える
6460 参照

objective-c - UINT8_t 値をブール値としてチェックしていますか?

いくつかの UINT8_T 値があり、ここで混乱するかもしれませんが、それらの値をオブジェクティブ C の条件ステートメントとして使用できますか? 00000001 がある場合、bool digitalOutput1 を true に設定する必要がありますか?

不明な点がありましたら申し訳ありません...不明な点がございましたら、お気軽にお問い合わせください。

UINT8_T オブジェクトをトラバースする方法は次のとおりです。

そのため、各ビットを下にシフトして、各値に 1 と 0 があるかどうかを確認し、1 がある場合はスイッチ出力をオンにします。そうでない場合は、オフにします。

基本的に私が求めているのは、値が割り当てられている UINT8_T 変数/インスタンスをトラバースしているかどうかです。ブール値と比較して条件ステートメントとして使用できますか? すなわち;

0 投票する
0 に答える
124 参照

ios - uint8_t 条件のためにメソッドが呼び出されていない - 目的 C

皆さん、私はこれら 2 つの方法を持っています。なぜ自分digitalSMSCheckが呼び出されないのか理解できないようです。

私のメソッドは、常に変化している外部ソースからオブジェクトをsetInput取得するため、決して静的な値ではありません。uint8_t次に、setInput メソッドが他のメソッドを呼び出します。digitalInputAlertSystem古いオブジェクトを渡しuint8_t、新しいuint8_tオブジェクトを生成して 2 つを比較します。

次に、2 つのオブジェクトが同じでない場合に、各ビットをチェックして、メソッドから元のオブジェクトuint8_tと同じ値が割り当てられているかどうかを確認する for ループを使用して、オブジェクトの 8 ビットをトラバースします。次に、それらがビットごとに異なる場所を見つけ、メソッドを介して SMS アラートを送信します (これは正しく呼び出されていません)。uint8_tsetInputuint8_tdigitalSMSCheck

digitalSMSCheck メソッドは次のとおりです。

0 投票する
4 に答える
29318 参照

arrays - GoLang でバイト スライス "[]uint8" を float64 に変換する

GoLang で[]uint8バイト スライスをに変換しようとしています。float64この問題の解決策がオンラインで見つかりません。最初に文字列に変換してから a に変換するという提案を見てきましたfloat64が、これは機能していないようです。値が失われ、最終的にゼロになります。

例:

そして、それは機能しません...

0 投票する
1 に答える
1083 参照

c - uchar 配列の uint8 型ポインタへの変換

uchar の配列を uint8 ポインターに変換したい。どちらも 8 ビットで、値の範囲は 0 から 255 であるため、原因と問題は発生しないと思います。

上記のリストを uint8t へのポインターを受け入れる関数に渡す必要があります。私はこのようにそれを渡すことができます:

uint8として読み取ったときに値に影響を与えないようにします。

0 投票する
2 に答える
2496 参照

c - char* を uint8_t の配列に変換する (c)

関数呼び出しを行い、IPv6 アドレスを表す文字列の配列を受け取ることができます。それはこのように見えます

バッファを印刷した場合、ipv6アドレスを文字列形式でゲートします:

ただし、私のプロジェクトで ipv6 アドレスを表す方法は、次のように uint8_t データ型を使用して 16 の 16 進数を使用することです。

今私の問題は、uint8_t [16]にキャスト(またはバッファのメモリをコピー)する方法です

私が手に入れたいのは

とにかく私ができることはありますか?よろしく、

0 投票する
0 に答える
95 参照

c - sscanf to uint8_t behaves different depending on variable order in structure body

I've encountered strange behaviour when using sscanf. Depending on order of a and b in structure one of them is getting 0.

#xA;

and here is code which gets me confused:

#xA;

When I change order of variables in structure body to:

#xA;

sscanf returns 2 but a is 0;

I've tested it on 32bit GCC on linux and above code works in both ways. But when compiling with 64bit GCC on windows 7 it behaves like I mentioned. On boths systems I'm using GCC 4.8.1.

0 投票する
3 に答える
29103 参照

c - C 関数から uint8_t の配列へのポインターを返す - コンパイラ エラーを取得する

私は機能を持っています:

それを実行する:

コンパイラ エラーを返します。

関数から uint8_t の配列へのポインターを返します。ここで何が間違っているのですか?

0 投票する
1 に答える
641 参照

javascript - JavaScript で共有バッファを使用して型付き配列を効率的に使用するにはどうすればよいですか?

私のコードには、一連のピクセル座標を含むオブジェクトがあります。出力が常にキャッシュされるとは限らない 60fps ゲームで使用されるため、このオブジェクトのパフォーマンスは重要です。

実験とベンチマークの後、型なし配列を使用する場合、3D 配列が実装の最速の方法であることが判明しました。

状況によっては、オブジェクトの速度が十分でないためUint8Array、2D 配列を使用して実装を試みました。

これは遅くなります。- への書き込みと s からの読み取りが高速であるため、高速になると思いましたがUint8array、すべての PixelCollection オブジェクトに対して巨大なオブジェクトを作成しているため、すべてのピクセルを反復処理するのに時間がかかるため、ピクセルの取得が大幅に遅くなります。(注:型なし配列を使用して上記の実装も試しました。かなり遅いです)

通常、PixelCollection にはすべてのピクセルが設定されているわけではありません。ただし、境界ボックスはキャンバス全体にまたがる可能性があるため、この大きなバッファーを使用して配列を作成する必要があります。

しかし、それを回避する方法があるかもしれません。1 つの大きな共有バッファーを作成し、PixelCollection ごとにバイト オフセットを使用できます。そのため、PixelCollectionP1が 100 バイトを占める場合、PixelCollectionP2はバイト オフセット 100 から開始されます。これによりメモリがより効率的に使用されますが、PixelCollection が使用するすべてのバイトの範囲を追跡する必要があります (これは C が「ポインター」と呼ぶものですか?) .

厄介な部分:P1のバウンディング ボックスが拡大すると、 のP2スペースを確保するために移動する必要がありP1ます。また、共有バッファーに安全なバッファー サイズを設定する必要があるため、必要なメモリ量を安全に推測する必要があります。

これを実装することは可能ですが、多くの時間と試行錯誤が必要です。

ですから、これを始める前に、それは良い方法だと思いますか? これを行うためのより良い方法または簡単な方法はありますか? 私が学ぶことができる実装例を知っていますか?

編集:最適化を試してみたい場合に備えて、jsperf を追加しました。
最適化の優れたアイデアがある場合は、この jsperf に追加してください。

0 投票する
1 に答える
9670 参照

string - uint8_t データで int を送信する方法は?

airspayce.com の RadioHead Packet Radio ライブラリを使用しています。例 (nrf24_reliable_datagram_client & server) では、文字列を前後に送信することで 2 つのノードが互いに通信できるようにしています。ここで、文字列の代わりに int を送信し、このデータで何かをしたいと考えています。これは、例で行うことです。

buf バイトを定義します。

この関数は次のデータを受け取ります。

buf 変数を出力します。

これまでのところとても良い.今私は次のようなことをしたい:

または:

しかし、私は得る:

その次に、データを送信している反対側には、次のものがあります。

最初の質問のコードを使用して受信側でこのデータを印刷すると、奇妙な文字が表示されます。だから私は思った、試してみましょう:

しかし、私は得る:

私は何を間違っていますか?前もって感謝します!