Potrzebuję czegoś takiego jak uint16_t, ale do pływającegoliczby punktowe zamiast liczb całkowitych. Muszę być w stanie przekonwertować float na to, aby móc go przenieść i przekonwertować później na float (oczywiście stracę trochę precyzji). Czy istnieje proste rozwiązanie tego problemu, czy też powinienem to zrobić ręcznie?
Odpowiedzi:
6 dla odpowiedzi № 1Nie ma czegoś takiego w standardzie C. Niektóre kompilatory mają __fp16.
Możesz użyć Numery Q., ale są one ograniczone w ustalonym zakresie.
Jeśli naprawdę potrzebujesz Ruchomy punkt, z wykładnikiem, powinieneś zaimplementować ieee standardowa połowa precyzji.
Regularny artimetyki działają na liczbach Q. Powinieneś napisać własną arytmetykę dla połowy precyzji. Chyba że twój kompilator Wspieraj to.
Albo idź otwarte źródło.