Záznamy typu proměnných
Napsal: 29 led 2019 17:56
Snažím se převést záznamy o pevné délce různých datových typů a velikostí do jedné datové struktury v jazyce C. Přemýšlel jsem o použití struktur svazků, ale některé pole mohou mít délku až 50 znaků, takže spousta paměti by bylo zbytečné. Existuje lepší způsob ukládání těchto údajů?
Jako příklad:
20190128značka 24color 9 (int, 6 char, int, 6 char, int)
verylongname4520190128 (12 znaků, int, int)
jsou dva možné nahrávací formáty. Kdybych měl ukládat oba záznamy pomocí stejné struktury, jediná věc, na kterou momentálně můžu uvažovat, je použít spojení s char pole délky 13 a int pro všechny prvky tak, aby největší část dat lze uložit. To by vyhovovalo jakémukoli jinému záznamu za předpokladu, že řetězec s 12 znaky je největší proměnnou. Pro tento příklad by tato struktura měla být 5 z těchto svazků, takže mohl být uložen první záznam. To hodně odpadá, když ukládáte některý z rekordních formátů, takže to není tak skvělé řešení (imo).
Jako příklad:
20190128značka 24color 9 (int, 6 char, int, 6 char, int)
verylongname4520190128 (12 znaků, int, int)
jsou dva možné nahrávací formáty. Kdybych měl ukládat oba záznamy pomocí stejné struktury, jediná věc, na kterou momentálně můžu uvažovat, je použít spojení s char pole délky 13 a int pro všechny prvky tak, aby největší část dat lze uložit. To by vyhovovalo jakémukoli jinému záznamu za předpokladu, že řetězec s 12 znaky je největší proměnnou. Pro tento příklad by tato struktura měla být 5 z těchto svazků, takže mohl být uložen první záznam. To hodně odpadá, když ukládáte některý z rekordních formátů, takže to není tak skvělé řešení (imo).