私は以下のようなコードを試していました。
int TestMethod(int a, int b)
{
printf("In TestMethod %d, %d \r\n", a, b);
return 0;
}
int main(void)
{
void (*ap_cb_function)() = (void(*)())TestMethod;
ap_cb_function();
return 0;
}
gcc コンパイラでうまく動作します。これにより、a と b のランダムな値が出力されます。これはどのように作動しますか?行でエラーが発生することを期待していました:
void (*ap_cb_function)() = (void(*)())TestMethod;