Dynamiczna struktura danych - dodanie rekordu

Odpowiedz Nowy wątek
2019-01-10 13:55
0

Mam problem z napisaniem programu, który będzie wyglądał następująco: podaję liczbę klientów a następnie program pyta o ich dane osobowe.

Generalnie w wersji statycznej nie mam z tym problemu, aczklowiek przy dynamicznej wersji zaczynają się schody. Potrafię dodać tylko jedną osobę do struktury.

#include <stdio.h>
#include <stdlib.h>
 
typedef struct sklep {
    int wiek;
} dane;
 
void* dodaj()
{
    dane* klient = malloc(sizeof(dane));
    printf("Podaj wiek:");
    scanf("%c", &(*klient).wiek);
}
 
int main()
{
    dodaj();
}
 

generalnie nie mam pojęcia jak odwołać się w głownym bloku programu do tej struktury

edytowany 2x, ostatnio: kq, 2019-01-10 16:00

Pozostało 580 znaków

2019-01-10 14:10
2

Struktura sklep, która zawiera pole wiek, ma to sens?:) Poza tym wszystko jest OK, w strukturze jest miejsce tylko na jedną daną, to jak Chcesz dodać więcej? Mógłbyś, na przykład, stworzyć tablicę struktur.


edytowany 1x, ostatnio: lion137, 2019-01-10 14:12
vector - Kod wygląda na czyste C ;) - grzesiek51114 2019-01-10 14:11
Tak mieszają:) jest w C/C++ i nie ma właściwych tagów. Dzięki, Edit. - lion137 2019-01-10 14:12

Pozostało 580 znaków

2019-01-10 14:16
1

Poza tym, co @lion137 napisał, nie zwalniasz dynamicznie zaalokowanej pamięci.

edytowany 1x, ostatnio: grzesiek51114, 2019-01-10 14:27
Wcześniej czy później spotka go za to sroga kara, to się nauczy:-D - lion137 2019-01-10 14:17

Pozostało 580 znaków

2019-01-10 16:17
0

A jakbym chciał podać z klawiatury ile klientów ma być w strukturze? Jakby wyglądał program?

Pozostało 580 znaków

2019-01-10 16:32
0

Spokojnie, najpierw, Zastanów się co Chcesz, strukturę z wieloma polami/może tablicą, czy tablicę struktur. Na razie Masz tablicę z miejscem na jedną zmienną.


Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0