Lo siento si esto es simple, mi C++ está oxidado.código de C++ ligeramente extraño
¿Qué está haciendo? No hay asignación o llamada de función por lo que puedo ver. Este patrón de código se repite muchas veces en algún código que heredé. Si es importante, es código incrustado.
*(volatile UINT16 *)&someVar->something;
editar: continuando desde allí, ¿confirma el siguiente código adicional Heaths suspicions? (Exactamente desde el código, incluyendo la repetición, a excepción de los nombres han sido cambiados para proteger a los inocentes)
if (!WaitForNotBusy(50))
return ERROR_CODE_X;
*(volatile UINT16 *)& someVar->something;
if (!WaitForNotBusy(50))
return ERROR_CODE_X;
*(volatile UINT16 *)& someVar->something;
x = SomeData;
¿Código incrustado? Entonces esta es probablemente una dirección física, como sospecha Sharth. –
Nota: Agregué un enlace al artículo en la respuesta a continuación: http://www.mjmwired.net/kernel/Documentation/volatile-considered-harmful.txt – Artyom
Es una buena idea lanzar el resultado de una lectura que no va a ninguna parte. con '(void)', para evitar advertencias del compilador. Entonces '(vacío) * (volatile uint16_t *) & someVar-> something'. Por supuesto, envuelva esto en una función macro o en línea, ¡no corte y pegue esto por todos lados! –