- 博客(3)
- 收藏
- 关注
原创 关于字符串转义问题
但是在一些问题中,如在单片机向esp8266发送AT指令,发送json数据时,会出现剥离两次的情况。这样的思想,是,我们只将它们当成字符串,只关心下一层的内容,而不关心再多一层的数据转义问题。但是这是对于发送引号的情况。利用这样的思想,无论是字符串嵌套转发多少次,我们都可以一层一层推及上来。而这个字符串中又有引号引起来的东西,而为了防止匹配错误,他做了转义。但是对于内层的引号,因为他本身需要一个转义,我们需要再来一次转义。先发送一个\ ,所以 发的是\\,这样进行转义。即是内容中,的字符串,存在转义。
2024-06-02 08:50:16 218
原创 关于restrict的理解(自用)
我的理解猜测:这样可以让编译器知道在这指针的生命周期内,它指向的内容不会变化。这样的提示,给了程序一定的确定性,根据这样的确定性,提升效率。编译器并不是机械地将代码翻译为机械语言,它会进行优化,根据指向不再发生变化这,可以进行优化。那么我对一个数,输入6,那么只要它不再变化,以后引用它的代码,我都可以用立即数6,去取代。通过加上restrict关键字,编程者可提示编译器:在该指针的生命周期内,其指向的对象不会被别的指针所引用。此时如果程序确定,a 是 0 ,那么就直接返回b , 不用执行 a + b;
2024-05-18 15:35:49 413
原创 笔记:c++中大括号的几个用法
5.用作匿名对象,例如参数要求一个对象,此时传递一个大括号,它会自动将大括号中的内容初始一个对象作为参数传递过去。当初始化类的时候,此类不能是继承来的,不是有构造函数,不能有私有保护的成员变量。3.用于初始化容器 vector、map等,即各种链表、栈、队列、集合、图(字典)容器。4.初始化函数的参数,例如参数是一个vector,就可以在参数处直接写{1,2,3}。2.初始化数组、结构体、类,(初始化聚合类型)。即完全类似于一个结构体。6.赋值:int a={5};
2023-07-20 22:38:12 1059
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人