Отливка пустот * в двумерный массив - PullRequest
2 голосов
/ 27 ноября 2011

У меня есть пустота * Я получаю некоторую функцию, которая на самом деле является двумерным массивом int.Я хочу отправить его в качестве аргумента функции, которая ожидает двухмерный массив.Как лучше всего разыграть его правильно?

void foo(void* val){
   //How to cast val in order to send to bar??
   bar()
}

void bar(int val[2][2]){
//Do something 
}

1 Ответ

6 голосов
/ 27 ноября 2011
bar((int(*)[2]) val);

(Как утверждает Карл Норум, приведение даже не требуется; оно имеет то преимущество, что дает вам предупреждение компилятора, если вы случайно передаете его функции, ожидающей, скажем, int(*)[3].)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...