<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[liugenwei的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/liugenwei</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; liugenwei]]></copyright><item><title><![CDATA[OpenCV - 图像金字塔]]></title><link>https://blog.youkuaiyun.com/liugenwei/article/details/151930629</link><guid>https://blog.youkuaiyun.com/liugenwei/article/details/151930629</guid><author>liugenwei</author><pubDate>Mon, 22 Sep 2025 20:20:55 +0800</pubDate><description><![CDATA[高斯金字塔：存储的是图像本身的多尺度表示。用pyrDown()和pyrUp()操作。拉普拉斯金字塔：存储的是不同尺度下的细节信息。由高斯金字塔计算得出。]]></description><category></category></item><item><title><![CDATA[OpenCV - 图像的IO操作]]></title><link>https://blog.youkuaiyun.com/liugenwei/article/details/151231445</link><guid>https://blog.youkuaiyun.com/liugenwei/article/details/151231445</guid><author>liugenwei</author><pubDate>Sat, 06 Sep 2025 20:34:27 +0800</pubDate><description><![CDATA[OpenCV图像处理基础API摘要：1) cv.imread()读取图像，支持彩色、灰度和透明通道三种模式；2) cv.imshow()显示图像窗口，需配合waitKey()控制显示时长；3) cv.imwrite()保存处理后的图像；4) 操作流程为读取-&gt;显示-&gt;保存，最后用destroyAllWindows()释放资源。注意路径错误时imread()返回None，显示图像必须调用waitKey()防止闪退。]]></description><category></category></item><item><title><![CDATA[qsort函数详解：如何排序任意类型的数据？]]></title><link>https://blog.youkuaiyun.com/liugenwei/article/details/150933045</link><guid>https://blog.youkuaiyun.com/liugenwei/article/details/150933045</guid><author>liugenwei</author><pubDate>Wed, 27 Aug 2025 23:56:48 +0800</pubDate><description><![CDATA[本文介绍了C语言中回调函数的概念及其应用。回调函数是通过函数指针调用的函数，将函数地址作为参数传递，由另一函数在特定事件时调用。文中通过计算器示例展示了如何用回调函数简化重复代码。此外，详细讲解了C标准库中的qsort函数，包括其原型、参数说明及使用方法，重点阐述了如何编写比较函数compar来排序整型数组和结构体数组（按年龄或姓名）。文章通过代码示例演示了qsort的实际应用，体现了其通用性和灵活性。]]></description><category></category></item><item><title><![CDATA[C语言指针进阶：掌握数组指针、二维数组传参与函数指针]]></title><link>https://blog.youkuaiyun.com/liugenwei/article/details/150857526</link><guid>https://blog.youkuaiyun.com/liugenwei/article/details/150857526</guid><author>liugenwei</author><pubDate>Tue, 26 Aug 2025 23:06:52 +0800</pubDate><description><![CDATA[⼆维数组传参，形参的部分可以写成数组，也可以写成指针形式。]]></description><category></category></item><item><title><![CDATA[C语言指针进阶：从数组传参到模拟二维数组]]></title><link>https://blog.youkuaiyun.com/liugenwei/article/details/150776324</link><guid>https://blog.youkuaiyun.com/liugenwei/article/details/150776324</guid><author>liugenwei</author><pubDate>Mon, 25 Aug 2025 23:53:24 +0800</pubDate><description><![CDATA[⼀维数组传参，形参的部分可以写成数组的形式，也可以写成指针的形式。]]></description><category></category></item><item><title><![CDATA[你的指针安全吗？——详解C语言中的野指针与const修饰]]></title><link>https://blog.youkuaiyun.com/liugenwei/article/details/150704683</link><guid>https://blog.youkuaiyun.com/liugenwei/article/details/150704683</guid><author>liugenwei</author><pubDate>Sun, 24 Aug 2025 23:25:37 +0800</pubDate><description><![CDATA[变量是可以修改的，如果把变量的地址交给⼀个指针变量，通过指针变量的也可以修改这个变量。但是如果我们希望⼀个变量加上⼀些限制，不能被修改，怎么做呢？这就是const的作用。上述代码中n是不能被修改的，其实n本质是变量，只不过被const修饰后，在语法上加了限制，只要我们在代码中对n进行修改，就不符合语法规则，就报错，致使没法直接修改n。但是如果我们绕过n，使⽤n的地址，去修改n就能做到了，虽然这样做是在打破语法规则。输出结果：n = 0n = 20。]]></description><category></category></item><item><title><![CDATA[C语言指针入门：从内存到地址，一篇搞定！]]></title><link>https://blog.youkuaiyun.com/liugenwei/article/details/150654847</link><guid>https://blog.youkuaiyun.com/liugenwei/article/details/150654847</guid><author>liugenwei</author><pubDate>Sat, 23 Aug 2025 23:48:39 +0800</pubDate><description><![CDATA[在讲内存和地址之前，我们想有个⽣活中的案例： 假设有⼀栋宿舍楼，把你放在楼⾥，楼上有100个房间，但是房间没有编号，你的⼀个朋友来找你玩，如果想找到你，就得挨个房⼦去找，这样效率很低，但是我们如果根据楼层和楼层的房间的情况，给每个房间编上号。⽣活中，每个房间有了房间号，就能提⾼效率，能快速的找到房间。如果把上⾯的例⼦对照到计算机中，⼜是怎么样呢？]]></description><category></category></item><item><title><![CDATA[VS调试秘籍：从此告别Bug纠缠！]]></title><link>https://blog.youkuaiyun.com/liugenwei/article/details/150531541</link><guid>https://blog.youkuaiyun.com/liugenwei/article/details/150531541</guid><author>liugenwei</author><pubDate>Wed, 20 Aug 2025 10:51:16 +0800</pubDate><description><![CDATA[当我们发现程序中存在的问题的时候，那下⼀步就是找到问题，并修复问题。这个找问题的过程叫称为调试，英⽂叫debug（消灭bug）的意思。调试⼀个程序，⾸先是承认出现了问题，然后通过各种⼿段去定位问题的位置，可能是逐过程的调 试，也可能是隔离和屏蔽代码的⽅式，找到问题所的位置，然后确定错误产⽣的原因，再修复代码， 重新测试。]]></description><category></category></item><item><title><![CDATA[函数：C语言的乐高积木｜详解库函数+自定义函数实战]]></title><link>https://blog.youkuaiyun.com/liugenwei/article/details/150394826</link><guid>https://blog.youkuaiyun.com/liugenwei/article/details/150394826</guid><author>liugenwei</author><pubDate>Thu, 14 Aug 2025 23:13:25 +0800</pubDate><description><![CDATA[了解了库函数，我们的关注度应该聚焦在⾃定义函数上，⾃定义函数其实更加重要，也能给程序员写代码更多的创造性。⼀般我们在使⽤函数的时候，直接将函数写出来就使⽤了。⽐如：我们要写⼀个函数判断⼀年是否是闰年。上⾯代码中橙⾊的部分是函数的定义，绿⾊的部分是函数的调⽤。这种场景下是函数的定义在函数调⽤之前，没啥问题。]]></description><category></category></item><item><title><![CDATA[不只是下标！深入探索C语言数组的创建、存储与应用实战]]></title><link>https://blog.youkuaiyun.com/liugenwei/article/details/150346824</link><guid>https://blog.youkuaiyun.com/liugenwei/article/details/150346824</guid><author>liugenwei</author><pubDate>Wed, 13 Aug 2025 18:35:03 +0800</pubDate><description><![CDATA[⼀般你都会猜中间数字，⽐如：150，然后看大了还是小了，这就是。有 ⼀个⽐较迷惑的点，变⻓数组的意思是数组的⼤⼩是可以使⽤变量来指定的，在程序运⾏的时候，根据变量的⼤⼩来指定数组的元素个数，⽽不是说数组的⼤⼩是可变的。从输出的结果来看，每⼀⾏内部的每个元素都是相邻的，地址之间相差4个字节，跨⾏位置处的两个元素（如：arr[0][4]和arr[1][0]）之间也是差4个字节，所以。图中最右侧绿⾊的数字表⽰⾏号，第⼀⾏蓝⾊的数字表⽰列号，都是从0开始的，⽐如，我们说：第2⾏，第4列，快速就能定位出7。]]></description><category></category></item><item><title><![CDATA[分支循环的魔力：用C语言编写你的猜数字游戏]]></title><link>https://blog.youkuaiyun.com/liugenwei/article/details/150109907</link><guid>https://blog.youkuaiyun.com/liugenwei/article/details/150109907</guid><author>liugenwei</author><pubDate>Mon, 11 Aug 2025 23:35:03 +0800</pubDate><description><![CDATA[本文介绍了一个用C语言实现的猜数字游戏。游戏包含随机数生成和猜测逻辑两部分：1. 使用time()获取时间戳作为种子，配合rand()函数生成1-100的随机数；2. 玩家通过输入猜测数字，程序会根据大小给出提示，直到猜中或5次机会用完。文章详细说明了随机数生成的原理(包括srand()和time()的使用方法)，并提供了完整的代码实现，包含游戏菜单、主控逻辑和5次机会限制等功能。该程序展示了基本的控制流程和随机数处理技术。]]></description><category></category></item><item><title><![CDATA[从if到循环嵌套：一篇文章吃透C语言程序控制流]]></title><link>https://blog.youkuaiyun.com/liugenwei/article/details/150022573</link><guid>https://blog.youkuaiyun.com/liugenwei/article/details/150022573</guid><author>liugenwei</author><pubDate>Fri, 08 Aug 2025 21:26:42 +0800</pubDate><description><![CDATA[摘要：本文详细介绍了C语言中的流程控制结构，包括分支结构（if、switch语句）和循环结构（while、for、do-while）。重点讲解了if语句的语法形式、嵌套使用及注意事项，switch语句的执行流程和break关键字的必要性，以及三种循环语句的特点和适用场景。文章还分析了关系运算符、逻辑运算符的使用方法，并通过多个实例代码（如判断奇偶、星期几、素数等）展示了这些控制结构的实际应用。最后简要介绍了goto语句的用法和注意事项。]]></description><category></category></item><item><title><![CDATA[printf和scanf操控术：让C语言输入输出再无神秘]]></title><link>https://blog.youkuaiyun.com/liugenwei/article/details/149908238</link><guid>https://blog.youkuaiyun.com/liugenwei/article/details/149908238</guid><author>liugenwei</author><pubDate>Tue, 05 Aug 2025 15:24:00 +0800</pubDate><description><![CDATA[本文系统介绍了C语言中printf()和scanf()函数的基本用法。printf()用于格式化输出，支持多种占位符（如%d、%f、%s等）和格式控制（宽度、小数位数等），需注意转义字符的使用。scanf()用于读取用户输入，需注意变量前加&amp;符号（字符串除外），支持类似printf()的占位符，并介绍了返回值、赋值忽略符*等特性。两个函数都定义在stdio.h头文件中，是C语言标准输入输出的核心函数，使用时需注意数据类型匹配和格式控制。]]></description><category></category></item><item><title><![CDATA[保姆级教程：C 语言数据类型与变量零基础解析]]></title><link>https://blog.youkuaiyun.com/liugenwei/article/details/149837391</link><guid>https://blog.youkuaiyun.com/liugenwei/article/details/149837391</guid><author>liugenwei</author><pubDate>Sat, 02 Aug 2025 23:14:57 +0800</pubDate><description><![CDATA[本文系统介绍了C语言中的数据类型、变量和基本运算符。主要内容包括：1) 数据类型分类（字符型、整型、浮点型、布尔型）及其长度计算；2) signed和unsigned关键字的区别；3) 变量的创建、初始化和分类（全局/局部变量）；4) 算术运算符（+、-、*、/、%）的使用规则和注意事项；5) 赋值运算符和复合赋值运算符；6) 单目运算符（++、--、正负号）的前后置区别；7) 强制类型转换的语法和应用场景。通过示例代码详细说明了各类运算符的实际应用，特别强调了整数除法和浮点数除法的区别，以及自增自减运算符]]></description><category></category></item><item><title><![CDATA[C语言基本概念]]></title><link>https://blog.youkuaiyun.com/liugenwei/article/details/149721246</link><guid>https://blog.youkuaiyun.com/liugenwei/article/details/149721246</guid><author>liugenwei</author><pubDate>Mon, 28 Jul 2025 21:15:27 +0800</pubDate><description><![CDATA[1、编译型语言，需要将源代码转换为机器指令（.c →.obj →.exe）2、与自然语言不同，是人机交互的媒介。]]></description><category></category></item><item><title><![CDATA[我的编程启程：从零开始的学习之旅]]></title><link>https://blog.youkuaiyun.com/liugenwei/article/details/149616718</link><guid>https://blog.youkuaiyun.com/liugenwei/article/details/149616718</guid><author>liugenwei</author><pubDate>Thu, 24 Jul 2025 22:12:22 +0800</pubDate><description><![CDATA[编程世界的大门已经向我敞开，这是我的第一步见证。我是一名大学生，马上要读大二了。现在的编程目标是考过C语言计算机二级。打算跟着鹏哥C语言集训营学习编程。每周大概投入20个小时左右。目前对IT公司还不怎么了解。编程之路虽长，但每一步都值得记录。]]></description><category></category></item></channel></rss>