<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[hdy_kpl的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/hdy_kpl</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; hdy_kpl]]></copyright><item><title><![CDATA[理解ARP（Address Resolution Protocol）]]></title><link>https://blog.youkuaiyun.com/hdy_kpl/article/details/153468027</link><guid>https://blog.youkuaiyun.com/hdy_kpl/article/details/153468027</guid><author>hdy_kpl</author><pubDate>Fri, 17 Oct 2025 13:47:05 +0800</pubDate><description><![CDATA[请告诉我你的MAC地址。（1）先查ARP缓存表，看IP对应的MAC地址是否已经存在。（3）目标主机会回应ARP响应包，告诉它自己的MAC地址。将IP地址（逻辑地址）解析为MAC地址（物理地址）。（4）之后这条映射关系会缓存起来，存在ARP表中。注：因为在以太网中，真正的数据通信是通过MAC地址完成的，而不是IP地址。arp -a 是一个非常常用的网络命令，用于查看本机的ARP缓存表。当你的电脑要跟同一局域网内的设备通信时，它会怎么做？1.列出当前系统的ARP表内容。二、arp -a命令的作用。]]></description><category></category></item><item><title><![CDATA[深入理解嵌入式编程或系统编程中的const和volatile两个关键字]]></title><link>https://blog.youkuaiyun.com/hdy_kpl/article/details/152030223</link><guid>https://blog.youkuaiyun.com/hdy_kpl/article/details/152030223</guid><author>hdy_kpl</author><pubDate>Wed, 24 Sep 2025 11:08:33 +0800</pubDate><description><![CDATA[编译器会确保每次访问interrupt_flag时都直接从内存中读取它的值，而不是使用缓存或寄存器中的值。volatile告诉编译器不要优化对该变量的访问，因为它的值可能会在程序运行时被外部因素修改。·  volatile：表示该变量的值可能会在任何时刻发生变化，通常是外部因素改变。const用于指示一个变量的值不能被改变。volatile表示指向的内存位置的值可能随时变化。结合使用代表一个常量的值可能会被外部改变，但你。const表示指针本身和指向的值都不能被修改。中取值，而不是从寄存器或缓冲中读取。]]></description><category></category></item><item><title><![CDATA[error: expected identifier or ‘(‘ before string constant extern “C“ {]]></title><link>https://blog.youkuaiyun.com/hdy_kpl/article/details/140327132</link><guid>https://blog.youkuaiyun.com/hdy_kpl/article/details/140327132</guid><author>hdy_kpl</author><pubDate>Wed, 10 Jul 2024 16:33:16 +0800</pubDate><description><![CDATA[解答：这个错误通常是因为在C文件中包含了带有extern "C"的头文件引起的。extern "C"是C++语言中的一个功能，用于告诉C++编译器以C的方式链接所指定的函数。（1）检测C++编译器：当用C++编译器编译代码时，编译器会定义一个特殊的宏'__cplusplus'，通过检测这个宏，就可以知道当前编译环境是否为C++。（2）兼容性：如果有些代码块或者头文件需要在C++编译器下做特殊处理。所以，需要确保extern "C"块只在C++编译器中编译，而不是在C编译器中编译。]]></description><category></category></item><item><title><![CDATA[Error: [BABEL] E:\tsstudy\part3\src\index.ts: .targets is not allowed in preset options TypeScript]]></title><link>https://blog.youkuaiyun.com/hdy_kpl/article/details/138121235</link><guid>https://blog.youkuaiyun.com/hdy_kpl/article/details/138121235</guid><author>hdy_kpl</author><pubDate>Tue, 23 Apr 2024 13:11:27 +0800</pubDate><description><![CDATA[我突然理解了，每一个preset是一个数组，我没有[]就相当于我没有使用数组包裹@babel/present-env，这是Babel配置的格式要求，如果不按照预期格式进行配置，Babel解析器法务正确解析，从而导致报错，修改之后，Babel就可以正确低读取并应用配置了。在为webpack进行配置完后并且下载了对应的依赖，允许npm run build，发现了报错。（1）检查Bable配置文件（这里都是最新版本）（3）检查webpack.config.js文件。（2）检查index.ts文件。]]></description><category></category></item><item><title><![CDATA[使用Echart时找不到名称Vue]]></title><link>https://blog.youkuaiyun.com/hdy_kpl/article/details/137237148</link><guid>https://blog.youkuaiyun.com/hdy_kpl/article/details/137237148</guid><author>hdy_kpl</author><pubDate>Mon, 01 Apr 2024 16:21:57 +0800</pubDate><description><![CDATA[解决办法：需要将Vue.prototype.$echarts = echarts改为'app.config.globalProperties.$echarts = echarts'。因为你是在Vue3中使用'createApp'方法创建应用的，所以需要使用'app.config.globalProperties'来添加全局属性。在网上查询了很多种方法，在下载完包之后，键入以下两句一般是可以实现插入Echart图的。原因：没有正确使用Vue来为'echarts'创建原型链。注意这里Vue一定要大写！]]></description><category></category></item></channel></rss>