<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Charles_ke的博客]]></title><description><![CDATA[坚持不懈，漫漫程序路]]></description><link>https://blog.youkuaiyun.com/Charles_ke</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Charles_ke]]></copyright><item><title><![CDATA[0xC0000005: 读取位置 0x0000000000000000 时发生访]]></title><link>https://blog.youkuaiyun.com/Charles_ke/article/details/150703170</link><guid>https://blog.youkuaiyun.com/Charles_ke/article/details/150703170</guid><author>Charles_ke</author><pubDate>Sun, 24 Aug 2025 16:42:44 +0800</pubDate><description><![CDATA[摘要：该文分析了Qt程序中常见的0xC0000005访问冲突错误，指出主要原因是空指针、未初始化指针或内存访问错误。重点介绍了一个易被忽视的特殊情况：函数未返回值的警告被忽略，导致程序运行时崩溃。通过示例代码展示了一个未返回值的QString解析函数如何引发该错误，并提供了添加返回语句的解决方案。建议开发者注意指针初始化和函数返回值，以避免此类运行时错误。]]></description><category></category></item><item><title><![CDATA[QString 转char*出现中文乱码]]></title><link>https://blog.youkuaiyun.com/Charles_ke/article/details/141020838</link><guid>https://blog.youkuaiyun.com/Charles_ke/article/details/141020838</guid><author>Charles_ke</author><pubDate>Thu, 08 Aug 2024 10:47:49 +0800</pubDate><description><![CDATA[在内存读写时出错，在读入端保证是正确编码格式，未乱码，但是得到错误的数据却有问题。原因，QString转成char*后字节大小与strVal.size()不一致。strVal是QString类型。]]></description><category></category></item><item><title><![CDATA[qt采用C++/CLI 方式调用C#dll的封装方法（高阶应用）]]></title><link>https://blog.youkuaiyun.com/Charles_ke/article/details/133957818</link><guid>https://blog.youkuaiyun.com/Charles_ke/article/details/133957818</guid><author>Charles_ke</author><pubDate>Sat, 21 Oct 2023 10:43:22 +0800</pubDate><description><![CDATA[C#写的dll是没有dllMain入口函数的，是一种中间语言，需要.Net运行时进行做本地化工作，因此如果要调用C#写的dll，需要依赖.Net运行时，然而Qt中还无法直接调用.Net运行时，而且Qt本身的moc机制与.Net运行时天然冲突，需要CLI这一层壳。有的也很简单，实际应用中，不仅需要导出类，还需要传递函数指针作为回调。简单讲讲需求：cpp作为主程序，c#作为第三方程序被调用，并且需要在c#代码里调用主程序里的方法。以下为C#DLL里的主要代码，主要做回调和导出。在C++主程序里作为调用方。]]></description><category></category></item><item><title><![CDATA[qt creator开启openMP加速方法]]></title><link>https://blog.youkuaiyun.com/Charles_ke/article/details/130367689</link><guid>https://blog.youkuaiyun.com/Charles_ke/article/details/130367689</guid><author>Charles_ke</author><pubDate>Tue, 25 Apr 2023 16:14:54 +0800</pubDate><description><![CDATA[Qt creator4.11 for msvc2017 内置openmp库]]></description><category></category></item><item><title><![CDATA[Critical error detected c0000374]]></title><link>https://blog.youkuaiyun.com/Charles_ke/article/details/129672657</link><guid>https://blog.youkuaiyun.com/Charles_ke/article/details/129672657</guid><author>Charles_ke</author><pubDate>Mon, 20 Mar 2023 18:07:08 +0800</pubDate><description><![CDATA[Critical error detected c0000374]]></description><category></category></item><item><title><![CDATA[（吐了呀，相同代码，相同case测试结果不一样）1052 Linked List Sorting]]></title><link>https://blog.youkuaiyun.com/Charles_ke/article/details/114410509</link><guid>https://blog.youkuaiyun.com/Charles_ke/article/details/114410509</guid><author>Charles_ke</author><pubDate>Fri, 05 Mar 2021 19:56:17 +0800</pubDate><description><![CDATA[在刷PAT的过程中，关于一个样例的疑问


#include &lt;iostream&gt;
#include &lt;list&gt;
#include &lt;vector&gt;
#include &lt;unordered_map&gt;
#include &lt;algorithm&gt;
using namespace std;

struct node
{
	int a,v, n;
	node(int x=0,int y=0,int z=0):a(x),v(y),n(z){}
};

vec]]></description><category></category></item><item><title><![CDATA[PTA1013 Battle Over Cities（dfs的四种做法效率对比）]]></title><link>https://blog.youkuaiyun.com/Charles_ke/article/details/114262050</link><guid>https://blog.youkuaiyun.com/Charles_ke/article/details/114262050</guid><author>Charles_ke</author><pubDate>Mon, 01 Mar 2021 15:34:23 +0800</pubDate><description><![CDATA[1.DFS+二维数组标记


#include &lt;iostream&gt;
#include &lt;unordered_map&gt;
#include &lt;vector&gt;
#include &lt;algorithm&gt;
using namespace std;
vector &lt; vector&lt;bool&gt;&gt; book(1000, vector&lt;bool&gt;(1000, false));
vector&lt;vector&lt;bool&gt;&gt;]]></description><category></category></item><item><title><![CDATA[1059. Prime Factors (25) 超简单方法]]></title><link>https://blog.youkuaiyun.com/Charles_ke/article/details/114106062</link><guid>https://blog.youkuaiyun.com/Charles_ke/article/details/114106062</guid><author>Charles_ke</author><pubDate>Thu, 25 Feb 2021 20:39:11 +0800</pubDate><description><![CDATA[#include &lt;iostream&gt;
#include &lt;map&gt;
using namespace std;

int main() {
 int n;
 cin &gt;&gt; n;
 printf("%d=", n);
 if (n==1)
 {
  printf("1\n");
 }
 else
 {
  int tmp = n;
  map&lt;int, int&gt; ans;
...]]></description><category></category></item><item><title><![CDATA[PAT1090 危险品装箱 (multimap很简单）]]></title><link>https://blog.youkuaiyun.com/Charles_ke/article/details/113844777</link><guid>https://blog.youkuaiyun.com/Charles_ke/article/details/113844777</guid><author>Charles_ke</author><pubDate>Thu, 18 Feb 2021 13:23:29 +0800</pubDate><description><![CDATA[1090 危险品装箱 (25 分)

集装箱运输货物时，我们必须特别小心，不能把不相容的货物装在一只箱子里。比如氧化剂绝对不能跟易燃液体同箱，否则很容易造成爆炸。

本题给定一张不相容物品的清单，需要你检查每一张集装箱货品清单，判断它们是否能装在同一只箱子里。

输入格式：

输入第一行给出两个正整数：N(≤10​4​​) 是成对的不相容物品的对数；M(≤100) 是集装箱货品清单的单数。

随后数据分两大块给出。第一块有N行，每行给出一对不相容的物品。第二块有M行，每行给出一箱货物的清单...]]></description><category></category></item><item><title><![CDATA[(大坑，不看后悔系列）C# 调用.bat 提示该命令不是内部命令或外部命令]]></title><link>https://blog.youkuaiyun.com/Charles_ke/article/details/107149759</link><guid>https://blog.youkuaiyun.com/Charles_ke/article/details/107149759</guid><author>Charles_ke</author><pubDate>Mon, 06 Jul 2020 09:17:55 +0800</pubDate><description><![CDATA[前提：双击.bat文件可以执行成功，用C#调用提示该命令不是内部命令或外部命令......

引用场景：打包程序里面，想安装驱动程序，结果调用系统目录下的pnputil.exe发现提示该命令不是内部命令或外部命令。

原因：程序调用会找不到部分工具

解决方案：将pnputil.exe复制到脚本同级目录下，既可解决







提示：事实上，用cpp调用也会出现相同情况。
...]]></description><category></category></item><item><title><![CDATA[(大坑，不看后悔系列)   bat：设置高级环境变量并不重启生效]]></title><link>https://blog.youkuaiyun.com/Charles_ke/article/details/106918883</link><guid>https://blog.youkuaiyun.com/Charles_ke/article/details/106918883</guid><author>Charles_ke</author><pubDate>Tue, 23 Jun 2020 11:16:28 +0800</pubDate><description><![CDATA[设置高级变量方法：


::MAVENPATH为将要添加的系统变量
SET  MAVENPATH=D:\JDK\apache-maven-3.6.3\bin
wmic ENVIRONMENT where "name='path' and username='&lt;system&gt;'"  set VariableValue="%path%;%MAVENPATH%"



不能用


::该命令只会对当前cmd生效，而不会在系统环境变量添加

set PATH=C: 

是对副本的修改却会引发Window]]></description><category></category></item><item><title><![CDATA[Python语法关注点相对于c/c++（一)]]></title><link>https://blog.youkuaiyun.com/Charles_ke/article/details/106900485</link><guid>https://blog.youkuaiyun.com/Charles_ke/article/details/106900485</guid><author>Charles_ke</author><pubDate>Mon, 22 Jun 2020 15:52:32 +0800</pubDate><description><![CDATA[1. 基础语法

  缩进：每个缩进层次使用单个制表符或两个空格或四个空格, 切记不能混用

  多行连接：使用斜杠（ \）将一行的语句分为多行显示;语句中包含 [], {} 或 () 括号就不需要使用多行连接符

  字符串表示： 使用引号(')、双引号(")、三引号('''或""") 来表示字符串，引号的开始与结束必须是相同类型的。

其中三引号可以由多行组成，编写多行文本的快捷语法，常用于文档字符串，在文件的特定地点，被当做注释。

  注释：# 单行...]]></description><category></category></item><item><title><![CDATA[python：tuple]]></title><link>https://blog.youkuaiyun.com/Charles_ke/article/details/106901477</link><guid>https://blog.youkuaiyun.com/Charles_ke/article/details/106901477</guid><author>Charles_ke</author><pubDate>Mon, 22 Jun 2020 15:02:39 +0800</pubDate><description><![CDATA[Python的元组与列表类似，不同之处在于元组的元素不能修改。

元组使用小括号，列表使用方括号。

元组创建很简单，只需要在括号中添加元素，并使用逗号隔开即可。

如下实例：

实例(Python 2.0+)

tup1 = ('physics', 'chemistry', 1997, 2000) tup2 = (1, 2, 3, 4, 5 ) tup3 = "a", "b", "c", "d"

创建空元组


tup1 = ()

元组中只包含一个元素时，需要在元素后面添加逗号


tup1 = (5]]></description><category></category></item><item><title><![CDATA[最详细计算机网络复习笔记[谢希仁]]]></title><link>https://blog.youkuaiyun.com/Charles_ke/article/details/106747282</link><guid>https://blog.youkuaiyun.com/Charles_ke/article/details/106747282</guid><author>Charles_ke</author><pubDate>Fri, 19 Jun 2020 22:47:30 +0800</pubDate><description><![CDATA[绪论

计算机网络

计算机网络：是一个将分散的、具有独立功能的计算机系统，通过通信设备与线路连接起来，由功能完善的软件实现资源共享和信息传递的系统。

计算机网络向用户提供的两个最重要的功能：

数据通信（连通性）：计算机网络最基本最重要的功能。
	资源共享
网络：若干个节点（node）以及连接节点的链路（linker）组成，节点可以为计算机，集线器，交换机，路由器等

因特网概述

因特网发展的三个阶段：

第一阶段：从单个网络 ARPANET 向互联网发展的过程。1983 年 TCP/IP 协议...]]></description><category></category></item><item><title><![CDATA[VS installer:安装程序无法正常卸载]]></title><link>https://blog.youkuaiyun.com/Charles_ke/article/details/106492359</link><guid>https://blog.youkuaiyun.com/Charles_ke/article/details/106492359</guid><author>Charles_ke</author><pubDate>Tue, 02 Jun 2020 11:19:49 +0800</pubDate><description><![CDATA[用VS2005的Setup Project制作应用程序安装包

按照网上说法，始终无法卸载程序

解决方法：使用快捷方式卸载

原因：快捷方式里有对应产品代码
]]></description><category></category></item><item><title><![CDATA[#数据结构# 二叉树非递归遍历]]></title><link>https://blog.youkuaiyun.com/Charles_ke/article/details/106462584</link><guid>https://blog.youkuaiyun.com/Charles_ke/article/details/106462584</guid><author>Charles_ke</author><pubDate>Sun, 31 May 2020 22:28:03 +0800</pubDate><description><![CDATA[1.层次遍历


class Solution {
public:
    vector&lt;vector&lt;int&gt;&gt; levelOrder(TreeNode* root) {
        vector &lt;vector &lt;int&gt;&gt; ret;
        if (!root) return ret;

        queue &lt;TreeNode*&gt; q;
        q.push(root);
        while (!q.emp]]></description><category></category></item><item><title><![CDATA[LeetCode206. 反转链表]]></title><link>https://blog.youkuaiyun.com/Charles_ke/article/details/106268466</link><guid>https://blog.youkuaiyun.com/Charles_ke/article/details/106268466</guid><author>Charles_ke</author><pubDate>Thu, 21 May 2020 21:55:23 +0800</pubDate><description><![CDATA[反转一个单链表。

示例:

输入: 1-&gt;2-&gt;3-&gt;4-&gt;5-&gt;NULL
输出: 5-&gt;4-&gt;3-&gt;2-&gt;1-&gt;NULL
进阶:
你可以迭代或递归地反转链表。你能否用两种方法解决这道题？



我清晰记得，以前在数据结构课上，老师和我们说：涉及到链表的操作，一定要在纸上把过程先画出来，再写程序。

现在想想，这句话简直是真理啊！

好理解的双指针
定义两个指针： prepre 和 curcur ；prepre 在前 curcur 在后。
每次.]]></description><category></category></item><item><title><![CDATA[LeetCode 链表系列总结]]></title><link>https://blog.youkuaiyun.com/Charles_ke/article/details/106203168</link><guid>https://blog.youkuaiyun.com/Charles_ke/article/details/106203168</guid><author>Charles_ke</author><pubDate>Mon, 18 May 2020 22:39:14 +0800</pubDate><description><![CDATA[1.删除链表中的节点

难点：给定节点不是头节点

解决方案：

最常见方法是修改之前节点的 next 指针，使其指向之后的节点。

因为，我们无法访问我们想要删除的节点 之前 的节点，我们始终不能修改该节点的 next 指针。相反，我们必须将想要删除的节点的值替换为它后面节点中的值，然后删除它之后的节点。


/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     ListNode *ne.]]></description><category></category></item><item><title><![CDATA[MFC：UpdateData更新数据失败]]></title><link>https://blog.youkuaiyun.com/Charles_ke/article/details/106147455</link><guid>https://blog.youkuaiyun.com/Charles_ke/article/details/106147455</guid><author>Charles_ke</author><pubDate>Fri, 15 May 2020 18:19:14 +0800</pubDate><description><![CDATA[在mfc对话框程序中，使用了数据交换机制，一个指针变量跟一个控件绑定。在初始化对话框中失败。

调试程序，发现UpdateData（false） 。进而定位到指针变量没有申请内存
]]></description><category></category></item><item><title><![CDATA[mysql：无法连接远程数据库]]></title><link>https://blog.youkuaiyun.com/Charles_ke/article/details/106025759</link><guid>https://blog.youkuaiyun.com/Charles_ke/article/details/106025759</guid><author>Charles_ke</author><pubDate>Sat, 09 May 2020 18:47:02 +0800</pubDate><description><![CDATA[ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.43.32' (10060)’



解决方案：1.你连接的远程ip是否改变，能否ping通

3.防火墙开启没有，是否屏蔽了你的mysql远程访问

4.重开防火墙

5. 尝试命令行访问数据库 mysql -h 192.168.43.32 -uroot -p，无法访问

关闭mysql服务，重新启动



Q:我




...]]></description><category></category></item></channel></rss>