Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Específico de Microsoft. Cuando se declara un puntero con el modificador __unaligned, el compilador supone que el puntero hace referencia a datos no alineados. Por lo tanto, se genera código adecuado para la plataforma para controlar las lecturas y escrituras no alineadas a través del puntero.
Comentarios
Este modificador describe solamente la alineación de los datos objetivo; se supone que el puntero en sí está alineado.
La necesidad de la palabra clave __unaligned varía según la plataforma y el entorno. Si los datos no se marcan correctamente, se pueden producir problemas que van desde mermas en el rendimiento hasta errores de hardware. El modificador __unaligned no se puede usar en la plataforma x86.
A efectos de compatibilidad con versiones anteriores, _unaligned es un sinónimo de __unaligned a menos que se especifique la opción del compilador /Za (Deshabilitar extensiones de lenguaje).
Para obtener más información sobre la alineación, vea:
align-
Operador
alignof pack-
/Zp(Alineación de miembros de estructura) - Ejemplos de alineación de estructuras x64