We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
I wrapped a C lib for using json.hpp, like this:
json_string = {"file":"/opt/test.conf"}
set json_string to a static json object
static json para = json::parse(json_string);
` extern "C" const char*
get_json_string()
{
if (para["file"].is_string()) { return para["file"].get<std::string>().c_str(); }
} `
but actually, get_json_string cannot get the real address of para, so how to get a string value in this way ?
I don't want to use strcpy like this: ` get_json_string(char* value)
if (para["file"].is_string()) { strcpy(value, para["file"].get<std::string>().c_str()); }
The text was updated successfully, but these errors were encountered:
I find a way like this:
if (para["file"].is_string())
return para["file"].get<json::string_t*>()->c_str(); ---- or ---- return para["file"].get_ptr<json::string_t*>()->c_str();
}
now I can get the correct data, is that right ?
and
get<json::string_t*>()->c_str(); or get_ptr<json::string_t*>()->c_str();
which one is corret, or better ?
Sorry, something went wrong.
You should use get_ptr to be sure no copies are made:
get_ptr
return get_ptr<json::string_t*>()->c_str();
Does this solve the issue?
many thanks, issue has been solved ^^
No branches or pull requests
I wrapped a C lib for using json.hpp, like this:
json_string = {"file":"/opt/test.conf"}
set json_string to a static json object
static json para = json::parse(json_string);
`
extern "C" const char*
get_json_string()
{
}
`
but actually, get_json_string cannot get the real address of para, so how to get a string value in this way ?
I don't want to use strcpy like this:
`
get_json_string(char* value)
{
}
`
The text was updated successfully, but these errors were encountered: