Langage

ByteBuffer.AlignmentOffset(Int32, Int32) Méthode

Définition

Retourne l’adresse de mémoire, pointant vers l’octet à l’index donné, modulo la taille de l’unité donnée.

[Android.Runtime.Register("alignmentOffset", "(II)I", "", ApiSince=33)]
public int AlignmentOffset(int index, int unitSize);
[<Android.Runtime.Register("alignmentOffset", "(II)I", "", ApiSince=33)>]
member this.AlignmentOffset : int * int -> int

Paramètres

index
Int32

L’index à interroger pour le décalage d’alignement doit être non négatif, aucune vérification des limites supérieures n’est effectuée

unitSize
Int32

La taille de l’unité en octets doit être une puissance de 2

Retours

L’adresse mémoire de l’octet indexé modulo la taille de l’unité

Attributs

Remarques

Retourne l’adresse de mémoire, pointant vers l’octet à l’index donné, modulo la taille de l’unité donnée.

La valeur de retour n’est pas négative dans la plage ( 0 inclusive) jusqu’à unitSize (exclusive), avec zéro indiquant que l’adresse de l’octet à l’index est alignée pour la taille de l’unité et une valeur positive que l’adresse est mal alignée pour la taille de l’unité. Si l’adresse de l’octet à l’index est incorrecte, la valeur de retour représente la quantité d’index à ajuster pour localiser un octet à une adresse alignée. Plus précisément, l’index doit être décrémenté par la valeur de retour si ce dernier n’est pas supérieur indexou incrémenté par la taille de l’unité moins la valeur de retour. Par conséquent, le blocquote donné <>

int value = alignmentOffset(index, unitSize)

</blockquote> puis les identités <blockquote>

alignmentOffset(index - value, unitSize) == 0, value &le; index

</blockquote et >blockquote<>

alignmentOffset(index + (unitSize - value), unitSize) == 0

</blockquote> doit contenir.

Ajouté dans 9.

Java documentation pour java.nio.ByteBuffer.alignmentOffset(int, int).

Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.

S’applique à