<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Utotao的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/Utotao</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; Utotao]]></copyright><item><title><![CDATA[未来职业的规划]]></title><link>https://blog.csdn.net/Utotao/article/details/123082973</link><guid>https://blog.csdn.net/Utotao/article/details/123082973</guid><author>Utotao</author><pubDate>Wed, 23 Feb 2022 09:45:45 +0800</pubDate><description><![CDATA[待补充
]]></description><category></category></item><item><title><![CDATA[关于未来职业的调研]]></title><link>https://blog.csdn.net/Utotao/article/details/123082949</link><guid>https://blog.csdn.net/Utotao/article/details/123082949</guid><author>Utotao</author><pubDate>Wed, 23 Feb 2022 09:45:00 +0800</pubDate><description><![CDATA[待补充
]]></description><category></category></item><item><title><![CDATA[现有工作的反思与下一步]]></title><link>https://blog.csdn.net/Utotao/article/details/123082923</link><guid>https://blog.csdn.net/Utotao/article/details/123082923</guid><author>Utotao</author><pubDate>Wed, 23 Feb 2022 09:44:23 +0800</pubDate><description><![CDATA[待补充
]]></description><category></category></item><item><title><![CDATA[现有工作的总结]]></title><link>https://blog.csdn.net/Utotao/article/details/123082892</link><guid>https://blog.csdn.net/Utotao/article/details/123082892</guid><author>Utotao</author><pubDate>Wed, 23 Feb 2022 09:43:15 +0800</pubDate><description><![CDATA[待补充
]]></description><category></category></item><item><title><![CDATA[【15】map、set、unordered_map、unordered_set]]></title><link>https://blog.csdn.net/Utotao/article/details/115450853</link><guid>https://blog.csdn.net/Utotao/article/details/115450853</guid><author>Utotao</author><pubDate>Mon, 05 Apr 2021 23:39:14 +0800</pubDate><description><![CDATA[map、set、unordered_map、unordered_set在C++中使用频率较高的几种数据存储结构，因此，熟练掌握其基本的方法对于深入学习C++就先得尤为重要

1、map



2、set



3、unordered_map



4、unordered_set


]]></description><category></category></item><item><title><![CDATA[【14】构造函数和析构函数]]></title><link>https://blog.csdn.net/Utotao/article/details/115425518</link><guid>https://blog.csdn.net/Utotao/article/details/115425518</guid><author>Utotao</author><pubDate>Sun, 04 Apr 2021 14:31:50 +0800</pubDate><description><![CDATA[构造函数、默认构造函数、拷贝构造函数、深拷贝、浅拷贝、析构函、常成员函数，blabla一坨概念，云里雾里，今天我们就来好好理一理这些概念...

1、构造函数


#include "iostream"
#include "string"

using namespace std;

class base {
public:
	int a;
	base() {}
	base(int m_a) :a(m_a) {
		cout &lt;&lt; "base()" &lt;&lt; endl;
	}
	base]]></description><category></category></item><item><title><![CDATA[【13】操作符重载]]></title><link>https://blog.csdn.net/Utotao/article/details/115419225</link><guid>https://blog.csdn.net/Utotao/article/details/115419225</guid><author>Utotao</author><pubDate>Sat, 03 Apr 2021 19:23:19 +0800</pubDate><description><![CDATA[1、首先一个Demo


#include "iostream"
#include "string"

using namespace std;

class base {
public:
	int a;
	base(int m_a) :a(m_a) {
		cout &lt;&lt; "base()" &lt;&lt; endl;
	}
};

int main()
{
	base a(10);
	base b(10);
	base c = a + b;
	cout &lt;&lt; c.a &lt;&l]]></description><category></category></item><item><title><![CDATA[嵌入式操作系统]]></title><link>https://blog.csdn.net/Utotao/article/details/102253512</link><guid>https://blog.csdn.net/Utotao/article/details/102253512</guid><author>Utotao</author><pubDate>Sun, 06 Oct 2019 21:24:58 +0800</pubDate><description><![CDATA[参考：

[1] 《嵌入式系统软件及操作系统》

1、嵌入式操作系统的功能

在嵌入式系统中工作的操作系统被称为EOS（Embedded Operating System，嵌入式操作系统），EOS的基本功能主要是：

构建一个易于编程的虚拟平台；
	系统资源的管理者。
2、嵌入式操作系统的分类

1. 按系统类型分

商业化系统
	专用系统
	开放源代码系统
2. 按相应时间分

按照系统对响应时...]]></description><category></category></item><item><title><![CDATA[牛客一行输入多个int型数的方法]]></title><link>https://blog.csdn.net/Utotao/article/details/101543958</link><guid>https://blog.csdn.net/Utotao/article/details/101543958</guid><author>Utotao</author><pubDate>Fri, 27 Sep 2019 16:51:09 +0800</pubDate><description><![CDATA[案例：




#include &lt;iostream&gt;
#include &lt;vector&gt;
#include &lt;string&gt;
#include &lt;sstream&gt;

using namespace std;

int getNum(string &amp;str, vector&lt;int&gt; &amp;inputNum)
{
    ist...]]></description><category></category></item><item><title><![CDATA[内存管理单元MMU]]></title><link>https://blog.csdn.net/Utotao/article/details/101522034</link><guid>https://blog.csdn.net/Utotao/article/details/101522034</guid><author>Utotao</author><pubDate>Fri, 27 Sep 2019 11:42:11 +0800</pubDate><description><![CDATA[参考文献：

[1] 《嵌入式系统软件和操作系统》

本博客主要回答这几个问题：

1. 虚拟地址和物理地址有什么关系？

2. 如何通过设置MMU来控制虚拟地址到物理地址的转化

3. MMU的内存访问权限机制

4. TLB、Cache、Write buffer的原理，使用时的注意事项

MMU提供一种内存保护的硬件机制。内存保护用来防止地址越界和防止操作越权。采用内存保护机制的每个应用程序都...]]></description><category></category></item><item><title><![CDATA[存储控制器]]></title><link>https://blog.csdn.net/Utotao/article/details/101521943</link><guid>https://blog.csdn.net/Utotao/article/details/101521943</guid><author>Utotao</author><pubDate>Fri, 27 Sep 2019 11:40:25 +0800</pubDate><description><![CDATA[总线的使用方法是嵌入式底层开发的基础，了解它以后，再根据外设的具体特性，就可以驱动该外设了。


]]></description><category></category></item><item><title><![CDATA[有符号数和无符号数混用的思考]]></title><link>https://blog.csdn.net/Utotao/article/details/101350045</link><guid>https://blog.csdn.net/Utotao/article/details/101350045</guid><author>Utotao</author><pubDate>Wed, 25 Sep 2019 11:02:51 +0800</pubDate><description><![CDATA[参考文章：

[1]C语言中无符号数和有符号数之间的运算

[2]负数在计算机中怎样存储

[3]二进制减法

1、负数如何在计算机中存储？

原码：10进制转换成2进制是原码，只不过正数的原码是本身符号位为0，负数的原码符号位为1（以下篇幅均以单字节为例：10进制1的原码是0000 0001，10进制-1的原码是1000 0001）。

反码： 正数的反码是本身，负数的反码是负数的原码0变...]]></description><category></category></item><item><title><![CDATA[Windows访问Linux服务器共享文件夹--Samba]]></title><link>https://blog.csdn.net/Utotao/article/details/100848930</link><guid>https://blog.csdn.net/Utotao/article/details/100848930</guid><author>Utotao</author><pubDate>Sun, 15 Sep 2019 10:48:35 +0800</pubDate><description><![CDATA[使用Linux服务器进行开发时，需要把文件传到服务器上，一般使用FileZilla等类似软件，但如果只是.c文件，每次只是修改了一点点，再使用这种软件倒腾一下，就很浪费时间了，所以我们使用Samba建立Linux共享文件夹以供在windows本地直接操作服务器的文件，提升工作效率。

环境说明：

Linux服务器：腾讯云，假设IP为40.111.111.111

windows系统：win7

...]]></description><category></category></item><item><title><![CDATA[0-1背包问题]]></title><link>https://blog.csdn.net/Utotao/article/details/100651155</link><guid>https://blog.csdn.net/Utotao/article/details/100651155</guid><author>Utotao</author><pubDate>Mon, 09 Sep 2019 08:56:43 +0800</pubDate><description><![CDATA[背包问题是一种求最优解的问题，我们可以使用动态规划（DP）和回溯法来解决这类问题

参考文献：

[1]最通俗易懂的01背包问题讲解

动态规划

动态规划（Dynamic programming，DP）是一种在数学、计算机科学和经济学中使用的，通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法。 动态规划常常适用于有重叠子问题和最优子结构性质的问题。


动态规划在查找有很多重叠子问题...]]></description><category></category></item><item><title><![CDATA[内存及字符串操作memcpy、memmove、strcpy、strcmp等常用标准库函数的实现]]></title><link>https://blog.csdn.net/Utotao/article/details/100552154</link><guid>https://blog.csdn.net/Utotao/article/details/100552154</guid><author>Utotao</author><pubDate>Thu, 05 Sep 2019 09:57:46 +0800</pubDate><description><![CDATA[之前对于一些标准库函数都是拿来即用，没有考虑过这个函数的优缺点及具体的实现形式，在实习期间，一个标准库函数都是被二次封装了的，还是很有趣的。比如对于malloc函数，内部的形式是void *malloc_s(int ENUM_TYPE, int size)，多了一个参数ENUM_TYPE，比如对于我们TM就是MALLOC_TMBUFFER，其原因是因为这样写方便对堆区内存进行统计，防止有的小组ma...]]></description><category></category></item><item><title><![CDATA[常用排序方法总结]]></title><link>https://blog.csdn.net/Utotao/article/details/100522111</link><guid>https://blog.csdn.net/Utotao/article/details/100522111</guid><author>Utotao</author><pubDate>Tue, 03 Sep 2019 16:50:10 +0800</pubDate><description><![CDATA[面试常见问题，手撕快排、归并排序，或者手写一些查找算法，比如二分查找等。

本片及下篇博客将分别总结常见的排序算法和查找算法，主要是基于C或者C++。

这些问题本质都不难，只要勤加练习，充分理解，方能记于心中。



1、冒泡排序


#include "stdio.h"
#include "stdlib.h"
#include "stdbool.h"

void bubbleSort(int ...]]></description><category></category></item><item><title><![CDATA[C宏定义函数#define Func() do{} while(0)]]></title><link>https://blog.csdn.net/Utotao/article/details/100213698</link><guid>https://blog.csdn.net/Utotao/article/details/100213698</guid><author>Utotao</author><pubDate>Mon, 02 Sep 2019 11:25:42 +0800</pubDate><description><![CDATA[之前看到过一句话，说在C语言中几乎每一个#define宏定义都是代码的一个缺陷。

但是之前看到有个项目，包括在Linux Kernel里面，在代码中都有使用#define Func() do{} while(0)这种结构来定义被多次调用的而函数。

参考文章：

[1]#define do{}while(0)妙用

这个博客将对这个结构的宏定义函数进行总结和思考。

1、#define宏定义函...]]></description><category></category></item><item><title><![CDATA[C语言内联函数]]></title><link>https://blog.csdn.net/Utotao/article/details/100195649</link><guid>https://blog.csdn.net/Utotao/article/details/100195649</guid><author>Utotao</author><pubDate>Mon, 02 Sep 2019 11:16:14 +0800</pubDate><description><![CDATA[参考博客：

[1]内联函数 —— C 中关键字 inline 用法解析

这篇文章写得很好了，本博客主要针对上一篇博客的不足进行补充，同时从C语言编译过程对内联和宏定义函数进行比对，总起两者的区别和优缺点。

1、内联函数的使用方法

测试代码：

inlineTest.c


#include "inlineTest.h"
#include "stdio.h"

#define addDef...]]></description><category></category></item><item><title><![CDATA[实习总结【1】]]></title><link>https://blog.csdn.net/Utotao/article/details/94827833</link><guid>https://blog.csdn.net/Utotao/article/details/94827833</guid><author>Utotao</author><pubDate>Sat, 20 Jul 2019 09:55:10 +0800</pubDate><description><![CDATA[2019.06.24（礼拜一）

（每个礼拜一好像要开部门大会，这个礼拜一刚来，下个礼拜应该要参加，估计要认识一大波人了...）

办理入职手续（携带身份证，实习申请书）--&gt; 签实习协议 （实习时间） --&gt; 下午（三节课） --&gt; 第一节课是公司介绍 --&gt; 第二节课是保密安全教育 --&gt; 第三节课是如何从一个学校人成为一个社会人。

时间大约5点，部门HR过来叫...]]></description><category></category></item><item><title><![CDATA[实习总结【2】]]></title><link>https://blog.csdn.net/Utotao/article/details/94122761</link><guid>https://blog.csdn.net/Utotao/article/details/94122761</guid><author>Utotao</author><pubDate>Sat, 20 Jul 2019 09:55:01 +0800</pubDate><description><![CDATA[这个礼拜的主要目标是：

libxxx_xx_xxx.c代码重构优化，cleancode，减少圈复杂度，嵌套深度，代码行数；按照编程规范（Linux内核风格）优化变量命名等等；（这个文件可以作为最后答辩的成果进行展示）
	sdxx95模块环境熟悉，掌握相应的上机验证方法，为后续命令开发做准备（命令行开发得在第一个月末结束，最后成果之一）；
	项目代码整体架构了解；
2019.07.01（礼拜...]]></description><category></category></item></channel></rss>