Я работал над «QNX RTOS», в которой я наткнулся на следующую строку, может ли кто-нибудь помочь мне понять?
*(volatile void **) kernel_data = (void *) & _mqx_version_number;
С уважением, Омкар Диксит
(volatile void **)kernel_data
--> приведение kernel_data
к указателю на указатель типа volatile void.
Теперь kernel_data
— это указатель на указатель (volatile void**
)*kernel_data
— указатель типа volatile void*
*(volatile void **) kernel_data = (void *) & _mqx_version_number;
Итак, здесь мы приводим тип kernel_data
к типу volatile void **
, а затем разыменовываем его.
На самом деле, это был файл поставщика, в котором я нашел ту же строку, и у меня не было синтаксической ошибки для нее.
@OmkarDixit Извините, вы не получите никаких синтаксических ошибок.
*kernel_data
означает разыменование.
Хорошо, хорошо, теперь я понял!
Хорошо, я буду искать примеры того же самого. Большое спасибо за ответ!