#include <stdio.h>
/* Function prototype: */
void receiveArray(const int array_copy[][2]);
int main(void)
{
int array[2][2] = { { 2, 1 }, { 1, 4 } };
receiveArray(array);
return 0;
}
void receiveArray(const int array_copy[][2])
{
printf("Array received successfully.\n");
}
Yukarıdaki kodu derlediğimde derleyici:
note: expected 'const int ()[2]' but argument is of type 'int ()[2]'
Şeklinde bir uyarı veriyor. Ben bu uyarıyı gidermek için ile main() içerisindeki fonksiyon çağrısını aşağıdaki gibi düzelttim.
receiveArray((const int (*))array);
Fakat ben neden fonksiyonda böyle bir tip dönüştürücü kullandık anlayamadım. C'i yeni öğrenmeye başladım eğer bukonuyu açıkarsanız öğrenmiş olacağım. Derleyici neden böyle bir uyarı verdi?
Teşekkürler..
--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]