<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[fiskerzero的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/fiskerzero</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; fiskerzero]]></copyright><item><title><![CDATA[计算机网络基础]]></title><link>https://blog.youkuaiyun.com/fiskerzero/article/details/119349265</link><guid>https://blog.youkuaiyun.com/fiskerzero/article/details/119349265</guid><author>fiskerzero</author><pubDate>Tue, 03 Aug 2021 18:39:35 +0800</pubDate><description><![CDATA[IP地址：一台主机在网络中的标识（不可重复）
IPv4：
DHCP-NAT
DHCP：动态地址分配
NAT：网络地址转换
IPv6：
每一台网络中的数据都会带有两条信息：源端ip地址、对端ip地址。
端口：网络通信中一台主机上进程的标识符。
uint16_t类型的数据——范围：0~65535
每一个网络中的数据不但带有源端ip和对端ip，还包括两个信息：远端端口，对端端口。
源端ip+源端端口+对端ip+对端端口：描述了当前这个数据是从网络中的哪个主机上的哪个进程发出来的，要发往哪台主机上的哪个进程。
问：]]></description><category></category></item><item><title><![CDATA[进程概念——笔记]]></title><link>https://blog.youkuaiyun.com/fiskerzero/article/details/118966218</link><guid>https://blog.youkuaiyun.com/fiskerzero/article/details/118966218</guid><author>fiskerzero</author><pubDate>Tue, 27 Jul 2021 17:39:04 +0800</pubDate><description><![CDATA[一、冯诺依曼体系结构与操作系统
计算机应包含五大单元：
输入设备：采集数据的，比如典型的键盘，网卡接收网络中的数据
输出设备：进行数据输出，比如典型显示器，网卡向网络中发送数据
存储器：进行中间数据缓冲，比如内存
运算器：进行数据运算     运算器+控制器=CPU中央处理器
控制器：进行设备控制
注意：所有设备都是围绕存储器工作的
1、cpu不会直接从输入设备获取数据进行处理，而是先把数据放到存储器种，cpu从存储器种获取数据处理。
2、cpu不会直接将数据交给输出设备进行输出，而是先把数据放到存储器中，]]></description><category></category></item><item><title><![CDATA[操作系统中内存管理方式]]></title><link>https://blog.youkuaiyun.com/fiskerzero/article/details/119147742</link><guid>https://blog.youkuaiyun.com/fiskerzero/article/details/119147742</guid><author>fiskerzero</author><pubDate>Tue, 27 Jul 2021 17:38:22 +0800</pubDate><description><![CDATA[分段式
将虚拟地址的组成分为段号+段内偏移量，因此，通过短号对应的物理内存段起始地址，以及虚拟地址中的偏移量组成一个完整的物理地址，找到对应的物理内存单元。
优点：对编译器的地址管理比较友好，但没有解决数据连续存储内存利用率低的问题。因为一个段管理了很多变量数据，这些变量都是通过一个起始地址进行便宜的，也就在物理地址中使用了连续的地址空间（分段式管理中，同一段内的数据都使用了连续的地址空间）
分页式
通常物理块比较小，并且不要求同一个进程的多个数据必须在同一块内，因此分页式实现了数据在物理内存中的离散式存储]]></description><category></category></item><item><title><![CDATA[string类接口实现]]></title><link>https://blog.youkuaiyun.com/fiskerzero/article/details/109560462</link><guid>https://blog.youkuaiyun.com/fiskerzero/article/details/109560462</guid><author>fiskerzero</author><pubDate>Sun, 08 Nov 2020 15:55:11 +0800</pubDate><description><![CDATA[#include&lt;string&gt;
#include&lt;stdio.h&gt;
#include&lt;cassert&gt;
using namespace std;


/*方法一: string的传统版实现*/

class string{

public:

    //构造函数
    string(const char* str = "")
    {
        // 构造string类对象时，如果传递nullptr指针，认为程序非法，此处断言下
        if (nu]]></description><category></category></item><item><title><![CDATA[C++ 模板]]></title><link>https://blog.youkuaiyun.com/fiskerzero/article/details/109428033</link><guid>https://blog.youkuaiyun.com/fiskerzero/article/details/109428033</guid><author>fiskerzero</author><pubDate>Sun, 01 Nov 2020 16:06:02 +0800</pubDate><description><![CDATA[函数模板
函数模板与类型无关，在使用时被参数化。
函数模板格式
template&lt;typename T1, typename T2,…,typename Tn&gt;
返回值类型 函数名(参数列表){ }
template&lt;typename T&gt;
void Swap( T&amp; left, T&amp; right) 
{
 T temp = left;
 left = right;
 right = temp; 
 }

typename是用来定义模板参数关键字，也可以使用class]]></description><category></category></item><item><title><![CDATA[C++内存管理]]></title><link>https://blog.youkuaiyun.com/fiskerzero/article/details/109316383</link><guid>https://blog.youkuaiyun.com/fiskerzero/article/details/109316383</guid><author>fiskerzero</author><pubDate>Tue, 27 Oct 2020 19:10:07 +0800</pubDate><description><![CDATA[C/C++/linux内存分布




语言
linux




内核
内核


栈
栈


内存映射段
内存映射段


堆
堆


全局数据区
数据段


静态数据区
数据段


文字常量区
代码段


代码段
代码段


栈： 局部变量
堆： 动态开辟的空间
文字常量区： 字符串
代码段： 二进制数
数组名： 数组首元素的地址
特殊：
sizeof，&amp;数组名： 代表整个数组
sizeof： 类型的大小
strlen： 字符串有效字符个数，看/0结束的位置，通常大小为sizeof+1
malloc]]></description><category></category></item><item><title><![CDATA[C++类与对象（二）]]></title><link>https://blog.youkuaiyun.com/fiskerzero/article/details/109315832</link><guid>https://blog.youkuaiyun.com/fiskerzero/article/details/109315832</guid><author>fiskerzero</author><pubDate>Tue, 27 Oct 2020 17:38:22 +0800</pubDate><description><![CDATA[友元
功能： 突破封装
缺点： 会增加耦合度，破坏封装
友元分为友元函数和友元类
友元函数
1. 可以直接访问类的私有成员
2. 是定义在类外部的普通函数，不属于任何类
3. 可在类定义的任何地方声明，不受类访问限定符限制，声明时需要加friend关键字
4. 可访问类的私有和保护成员，但不是类的成员函数
5.  不能用const修饰
6. 一个函数可以是多个类的友元函数
7. 友元函数的调用与普通函数的调用和原理相同
友元类
1. 友元关系是单向的，不具有交换性
2. 友元关系不能传递
内部类
概念： 如]]></description><category></category></item><item><title><![CDATA[C++求1+2+3+...+n]]></title><link>https://blog.youkuaiyun.com/fiskerzero/article/details/109315446</link><guid>https://blog.youkuaiyun.com/fiskerzero/article/details/109315446</guid><author>fiskerzero</author><pubDate>Tue, 27 Oct 2020 17:12:12 +0800</pubDate><description><![CDATA[题目描述
求1+2+3+…+n，要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句（A?B:C）。
class Solution
{
public:
	class Sum
	{
	public:
		Sum()
		{
			_sum += _i;
			++_i;

		}
	};
	int Sum_Solution(int n)
	{
		_sum = 0;
		_i = 1;
		Sum arr[n];
		return _sum;

	}
priva]]></description><category></category></item><item><title><![CDATA[C++计算日期到天数的转换]]></title><link>https://blog.youkuaiyun.com/fiskerzero/article/details/109315216</link><guid>https://blog.youkuaiyun.com/fiskerzero/article/details/109315216</guid><author>fiskerzero</author><pubDate>Tue, 27 Oct 2020 17:08:51 +0800</pubDate><description><![CDATA[根据输入的日期，计算是这一年的第几天
#define _CRT_SECURE_NO_WARNINGS
#include&lt;stdio.h&gt;
#include&lt;string.h&gt;
#include&lt;iostream&gt;
using namespace std;

int days[2][13] = { { 0,31,59,90,120,151,181,212,243,273,304,334,365 },
					{ 0,31,60,91,121,152,182,213,244]]></description><category></category></item><item><title><![CDATA[C++日期差值]]></title><link>https://blog.youkuaiyun.com/fiskerzero/article/details/109315042</link><guid>https://blog.youkuaiyun.com/fiskerzero/article/details/109315042</guid><author>fiskerzero</author><pubDate>Tue, 27 Oct 2020 16:58:56 +0800</pubDate><description><![CDATA[题目描述
有两个日期，求两个日期之间的天数，如果两个日期是连续的我们规定他们之间的天数为两天
输入描述:
有多组数据，每组数据有两行，分别表示两个日期，形式为YYYYMMDD
输出描述:
每组数据输出一行，即日期差值
#define _CRT_SECURE_NO_WARNINGS
#include&lt;stdio.h&gt;
#include&lt;string.h&gt;
#include&lt;iostream&gt;
using namespace std;

int days[2][13] = {]]></description><category></category></item><item><title><![CDATA[C++打印日期]]></title><link>https://blog.youkuaiyun.com/fiskerzero/article/details/109300059</link><guid>https://blog.youkuaiyun.com/fiskerzero/article/details/109300059</guid><author>fiskerzero</author><pubDate>Mon, 26 Oct 2020 21:58:00 +0800</pubDate><description><![CDATA[题目描述
给出年分m和一年中的第n天，算出第n天是几月几号。
输入描述:
输入包括两个整数y(1&lt;=y&lt;=3000)，n(1&lt;=n&lt;=366)。
输出描述:
可能有多组测试数据，对于每组数据，按 yyyy-mm-dd的格式将输入中对应的日期打印出来。
#include&lt;stdio.h&gt;
#include&lt;stdlib.h&gt;
#include&lt;iostream&gt;
using namespace std;

int days[2][13] = { { ]]></description><category></category></item><item><title><![CDATA[C++日期累加]]></title><link>https://blog.youkuaiyun.com/fiskerzero/article/details/109299505</link><guid>https://blog.youkuaiyun.com/fiskerzero/article/details/109299505</guid><author>fiskerzero</author><pubDate>Mon, 26 Oct 2020 21:30:43 +0800</pubDate><description><![CDATA[日期累加
题目描述
设计一个程序能计算一个日期加上若干天后是什么日期。
输入描述:
输入第一行表示样例个数m，接下来m行每行四个整数分别表示年月日和累加的天数。
输出描述:
输出m行，每行按yyyy-mm-dd的个数输出。
#include&lt;stdio.h&gt;
#include&lt;stdlib.h&gt;
#include&lt;iostream&gt;
using namespace std;

int days[2][13] = { { 0,31,28,31,30,31,30,31,31,]]></description><category></category></item><item><title><![CDATA[C++类与对象]]></title><link>https://blog.youkuaiyun.com/fiskerzero/article/details/109205364</link><guid>https://blog.youkuaiyun.com/fiskerzero/article/details/109205364</guid><author>fiskerzero</author><pubDate>Wed, 21 Oct 2020 19:00:18 +0800</pubDate><description><![CDATA[C++类与对象
类的定义
class className
{
 // 类体：由成员函数和成员变量组成
 
}; // 一定要注意后面的分号

class为定义类的关键字，ClassName为类的名字，{}中为类的主体。
类的两种定义方式
1. 声明和定义全部放在类体中，置于.h文件
2. 声明放在.h文件中，类的定义放在.cpp文件中
注意： 一般情况下编写时更偏向于采用第二种定义方式。
原因： 如果把一个在.h文件中定义成员函数的程序提供给别人作为库时，别人就会看到程序的实现，而在.cpp中定义，人家使用]]></description><category></category></item><item><title><![CDATA[C++日期类的实现]]></title><link>https://blog.youkuaiyun.com/fiskerzero/article/details/109206815</link><guid>https://blog.youkuaiyun.com/fiskerzero/article/details/109206815</guid><author>fiskerzero</author><pubDate>Wed, 21 Oct 2020 18:46:53 +0800</pubDate><description><![CDATA[C++日期类
声明对象年、月、日，创建构造函数，实现日期类。
#include&lt;string.h&gt;
#include&lt;stdlib.h&gt;
#include&lt;iostream&gt;
using namespace std;

class Date
{

 private:
	int year;
	int month;
	int day;

 public:
	 // 全缺省的构造函数
	Date(int year = 1900, int month = 1, int day =]]></description><category></category></item><item><title><![CDATA[C++中计算类对象的大小]]></title><link>https://blog.youkuaiyun.com/fiskerzero/article/details/109205303</link><guid>https://blog.youkuaiyun.com/fiskerzero/article/details/109205303</guid><author>fiskerzero</author><pubDate>Wed, 21 Oct 2020 17:06:25 +0800</pubDate><description><![CDATA[计算类对象的大小
计算类对象的大小只需要将类中的成员变量加起来，同时注意内存对齐。
例
class A
{
public:
	void SetAInfo(const char* name, char* gender ,char age)
	{

	}

private:
	char _name[20];
	char _gender[3];
	int _age;
};
int main()
{
	cout &lt;&lt; sizeof(A) &lt;&lt; endl;

	return 0;
}

根据结]]></description><category></category></item></channel></rss>