nlohmann json:json中的回车换行符\n\r

json中是不允许有回车换行等不可见字符的:

#include 
#include 
using namespace std;
using json = nlohmann::json;
 
int main()
{

    string s1 = "aa\nbb";
    cout<

字符串s1中实际上5个字符,aa和bb中间的\n是一个转移字符,所以
cout< 输出为5

cout< 输出为
aa
bb

但是json中不允许有不可见字符,所以运行程序会coredump
terminate called after throwing an instance of 'nlohmann::json_abi_v3_11_3::detail::parse_error'
  what():  [json.exception.parse_error.101] parse error at line 1, column 1: syntax error while parsing value - invalid literal; last read: 'a'
已放弃 (核心已转储)

 但是如果直接在nlohmann json中使用\n,其实这个是两个字符&#

你可能感兴趣的:(C/C++,c++)