Witam, chciałbym was - drodzy użytkownicy spytać dlaczego dzieje się tak a nie inaczej z moim programem, na początek może przedstawię sam kod źródłowy
#include <iostream>
using namespace std;
int Wpis_do_tablicy(int ile, int tablica[]);
main(){
const int rozmiar = 3;
int tablica[rozmiar];
Wpis_do_tablicy(rozmiar, tablica);
return 0;
}
//Funkcja wpisująca wartości do tablicy
int Wpis_do_tablicy(int ile, int tablica[])
{
cout << "Prosze o podanie elementow tablicy " << ile << " elementowej\n\n";
for(int i=0; i < ile; i++)
{
cin >> tablica[i];
}
return tablica;
}
Prosty w działaniu program, który ma za zadanie wprowadzanie do tablicy danych, lecz kompilator sygnalizuje mi błąd
C:..\Return_tablica.cpp In function `int Wypis_do_tablicy(int, int*)':
C:..\Return_tablica.cpp invalid conversion from int*' to int'
Dlaczego funkcja nie zwraca adresu tablicy? w końcu nazwa tablicy to adres jej zerowego elementu czyż nie? Wiem że problem ten dość prosto rozwiązać za pomocą wskaźników. Szperałem i za każdym razem każdy sugeruje użycie wskaźników - czy to jedyna możliwość?
Moje pytanie jest czysto teoretyczne, coś mnie tchnęło i zacząłem się po prostu nad tym zastanawiać :) Proszę o wyrozumiałość w każdym razie =]
Z góry dziękuje.
Eldiane.