Aktywne Wpisy
![JoeGlodomor](https://wykop.pl/cdn/c0834752/1bfcffa77eb980f1ab6133c792da81043282e82d4f938fa0598f193e3c52819f,q60.jpg)
JoeGlodomor +489
![Jacinda](https://wykop.pl/cdn/c3397992/Jacinda_uNVSsHNDQH,q60.jpg)
Jacinda +396
hej Mireczki, nie wiem czy jest ktoś tutaj co pamięta mój post sprzed sześciu lat, kiedy chwaliłam się wynikami z matury:
mój wpis z 2018
Przyszłam się pochwalić, że studia skończyłam, udało się bez żadnej obsuwy - jestem oficjalnie lekarzem (⌐ ͡■ ͜ʖ ͡■)
tera jeszcze trochę papierkowej roboty i
mój wpis z 2018
Przyszłam się pochwalić, że studia skończyłam, udało się bez żadnej obsuwy - jestem oficjalnie lekarzem (⌐ ͡■ ͜ʖ ͡■)
tera jeszcze trochę papierkowej roboty i
![Jacinda - hej Mireczki, nie wiem czy jest ktoś tutaj co pamięta mój post sprzed sześc...](https://wykop.pl/cdn/c3201142/ab9b0514b8007be4a30f35a966a7490b28cda0b90c9a2f661860a9cf3a1d04a8,w150.png?author=Jacinda&auth=8b6c8801457161947c14e76dafb669ad)
źródło: obraz
Pobierz
Czy jest w standardowym C/C++ coś w rodzaju strumienia do zapisu w pamięci? Chodzi mi o to, żeby do jednego ciągłego bufora można było wrzucać sobie dużo różnych danych po kolei i potem przekazywać cały ten bufor gdzieś dalej. Teoretycznie mogę sam sobie napisać taki prosty bufor, ale może jest już coś gotowego.
#programowanie #programista15k #cpp #jezykc
@zetisdead: a nada się to do danych binarnych?
https://www.google.com/search?q=stringstream+binary+data
@MostlyRenegade: w buforze też musisz określić przechowywany typ. imo chcesz ładować do
std::vector<uint8_t>
, tylko musisz sobie zaklepać serializację/deserializację tych swoich typówjeżeli nie chcesz serializować, to
std::vector<std::variant<TypA, TypB, TypC...>>
@MamCieNaHita: no właśnie nie muszę. Mogę wszystko zrzutować na
char*
, bo i tak w takiej postaci dostaję to z API, z którego korzystam.@MostlyRenegade: nie rozumiem. Przecież bez określenia typu nie wiadomo, ile pamięci trzeba rezerwować.
Żeby przybliżyć problem, wrzucę wam ilustrację:
Jest sobie (bardzo prymitywne jak na XXI wiek) API, które zwraca obiekty w strukturach. W strukturze mogą znajdować się typy prymitywne, inne struktury lub
ChatGPT podpowiada te 2 najbliższe odpowiedniki
std::vector<char>
std::stringstream
@MostlyRenegade: Jak dla mnie to miotasz się w zeznaniach. Jeżeli dostajesz dane w postaci binarnej to zapewne chcesz zrobić deserializację. A jeśli dostajesz gotową strukturę wielkokrotnie, to nie rozumiem dlaczego nie można użyć std::vector.
@zibizz1: właśnie o takie coś mi chodziło i tego się właśnie obawiałem.
Trudno, sam sobie napiszę jakiś prosty bufor.
@Tytanowy: Nie dostaję jednakowej struktury wielokrotnie. Tzn. nie taką, jaka mi jest potrzebna. W strukturze Obj masz wskaźniki (a faktycznie to są relokowalne uchwyty) do tablic o różnych rozmiarach, a ja chcę mieć w buforze dane z tych tablic, a nie sam uchwyt. Przed wyjściem z funkcji uchwyty trzeba zwolnić, więc muszę i tak sobie zaalokować jakiś bufor, żeby sobie spod tych uchwytów skopiować dane do dalszej obróbki. Co za różnica, czy alokuję bufor intów, charów, czy innych cudów, skoro i tak muszę podać rozmiar w bajtach i
Komentarz usunięty przez autora
@MostlyRenegade: everything is void pointer