Comments (2)
There is nothing to decode to a null-terminated string because that would require a memory allocator to allocate a buffer one byte longer than the string to make room for the \0.
For the most part QCBOR works without a memory allocator since it is focused on embedded use cases and it returns strings as a pointer & length into the original encoded CBOR.
You could write a little wrapper yourself that uses malloc().
(When QCBOR handles indefinite-length string chunks it does make use of an allocator, QCBORStringAllocate, that can be configured, but is not set up by default. That allocator could be used to return null terminated strings as a special mode. That would be a small-medium scale enhancement project for QCBOR.)
from qcbor.
Understood - thank you for your detailed response @laurencelundblade
from qcbor.
Related Issues (20)
- There doesn't appear to be a way to determine how much space is needed for encoding HOT 4
- OSS-Fuzz integration HOT 2
- Uninitialized data warnings HOT 3
- Preferred Serialization support HOT 1
- Bugs in ieee754.c HOT 12
- Fail to decode an indefinite-length string with a zero-length first chunk. HOT 1
- BstrWrapErrorTest failing on ARM FVP AN521 (release v1.0) HOT 2
- Build error if ARM microlib is used HOT 3
- Enhancement: release QCBOR as MDK Software Pack
- UsefulBuf.h gives warnings when used with MSVC HOT 4
- ENCRYPTO should be ENCRYPT0 HOT 1
- Need BKM to use CBOR HOT 2
- Writing an empty null buffer triggers undefined behaviour. HOT 2
- Streaming encoding on the fly HOT 4
- CMake should support installation
- How to use cmake's disable float options? HOT 4
- Warnings when building release tag version 1.2 HOT 9
- Backward compatibility is broken HOT 4
- License file/Github setting HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from qcbor.