Nazwa tablicy jako parametr funkcji

Nazwa tablicy jako parametr funkcji
Michal-Warmuz
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 11
0

Mam takie zadanie:

Napisać funkcję typu void do wypisywania na ekran zawartości tablicy.
Nazwa tablicy i jej rozmiar powinny być podawane jako argumenty funkcji.

Co to znaczy że w parametrze ma się znaleźć nazwa tablicy ??

Althorion
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1620
2

No… To, że chcesz przekazywać tej funkcji tablicę poprzez jej nazwę i długość…

Dla przypomnienia, nazwa tablicy jest też wskaźnikiem na jej pierwszy element. O to Ci chodziło? Bo, prawdę mówiąc, nie rozumiem, czego nie rozumiesz.

Michal-Warmuz
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 11
0

@Althorion:

aaa czyli dobrze napisałem rozwiązanie ?

Kopiuj

#include <iostream>
#include <cstdlib>


int* RandomTable(int len) {

	int* tablica = new int[len];
	srand(time(NULL));

	for (int i = 0; i < len; i++)
	{
		tablica[i] = (rand() % 50) + 7;
	}

	return tablica;
}


void PrintTable(int* pArray, int len) {

	for (int i = 0; i < len; i++)
	{
		std::cout << pArray[i] << std::endl;
	}
}

int main()
{
	int len = 0;

	std::cout << "Podaj dlugosc tablicy: " << std::endl;
	std::cin >> len;

	int* pArr = RandomTable(len);

	PrintTable(pArr, len);
}

Althorion
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1620
5

Tak.

Pewnym czepialstwem, ale nie bezzasadnym, jest to, że długość tablicy lepiej by było jednak przekazywać jako inta bez znaku — w szczególności size_t — ale zrobiłeś co trzeba i jest to rozwiązanie poprawne.

rajszym
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 62
4

Dobrym zwyczajem jest używanie pary new / delete.
Gdyby ta para występowała w jednym bloku instrukcji, to byłoby fajnie.
Gdyby w c++ nie używać new / delete, to byłoby super.

WU
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 13
0
rajszym napisał(a):

Gdyby w c++ nie używać new / delete, to byłoby super.

Smart pointers to rozwiązanie by nie używać new/delete.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.