Przekazywanie tablicy struktur

Przekazywanie tablicy struktur
VA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 11
0

Witam
//opis programu
Program ma zainicjalizowac tablice struktur, przekazać ja z pomocą wskaźnika do funkcji wyświetlacz, a następnie wyświetlić to co jest w drugim elemencie tablicy
//problem
nie mogę wywołać konkretnego składnika za pomocą instrukcji (*dane)[1].wiek jak i dane[1]->wiek. Jak to zrobić?

//kod programu

Kopiuj
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
struct disel
{
	int wiek;
	char imie[40];
};

void wyswietlacz(struct disel *dane);
int main(void)
{
	struct disel milen[3]=
	{
		{
			15,{"Innocenty"}
		},
		{
			18,{"Mikolaj"}
		},
		{
			14,{"Konrad"}
		}
	};
	wyswietlacz(milen);
	return 0;
}

void wyswietlacz(struct disel *dane)
{
	printf("%d %s",dane[1]->wiek,dane[1]->imie);
}
 
CZ
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 231
1

Przekazujesz wskaźnik na tablice struktury a nie wskaźnik na tablice wskaźników do tej struktury, więc do składowych i-tego elementu powinieneś odwoływać się tak samo jak do składowych zwykłego obiektu: dane[1].imie.

VA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 11
0

Racja, dziękuje :D

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.