Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Przekazywanie tablicy jako parametr funkcji - pytanie o teorię

Ostatnio zmodyfikowano 2016-06-02 20:38
Autor Wiadomość
Szkaplerny
Temat założony przez niniejszego użytkownika
Przekazywanie tablicy jako parametr funkcji - pytanie o teorię
» 2016-06-02 20:23:38
Na kursie można przeczytać, że 'tablice przekazywane do funkcji nigdy nie są kopiowane'. Oznacza to, że pracujemy na oryginałach.
Czy powodem tego faktu jest to, że kompilator przetwarza przesłaną w parametrze tablice na wskaźnik (na pierwszy element)?
P-148810
Monika90
» 2016-06-02 20:38:48
To błąd w projekcie języka C - nie da się zadeklarować funkcji która pobiera tablicę przez wartość.

Nawet jak napiszesz coś takiego:
void f(int t[10]);

to kompilator potraktuje to jakbyś napisał:
void f(int* t);

Potem można taką funkcję wywołać tak:

   int a[100];
   f(a);

A działa to dzięki niejawnej konwersji z tablicy do wskaźnika na jej pierwszy element.
P-148811
« 1 »
  Strona 1 z 1