関数のパラメーターに argb 値があり、関数は agb 値を取り除き、r のみを保持する必要があります。どうやってそれをしますか?ありがとうございました
2 に答える
2
于 2009-08-03T11:10:29.443 に答える
2
これは、ビットごとのシフトとビットごとの AND で行われます。
32 ビット整数の uint。A、R、G、B はそれぞれ 8 ビット (1 バイト) を占有します。そして、それらは名前が意味する A、R、G、B と同じ順序で表示されます
b を取得するには、ビットごとの AND ステートメントで他のすべてのビットをマスクする必要があります。
a=argb&255 バイナリの 255 は 11111111 であるため、必要なビットのみが保持されます。
g の場合、最初にビットをシフトしてから上記を実行する必要があります。g=argb>>8&255
r は同じですが、16 ビットをシフトします
r=引数>>16&255
そして a=argb>>24&255
それが役立つことを願っています
于 2009-08-03T10:01:42.167 に答える