![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
文章平均质量分 72
l0g1n
这个作者很懒,什么都没留下…
展开
-
C++ Primer笔记(7)
建议:只有在必要时才使用后置操作符。前置操作需要做的工作更少,只需要加1后返回加1后的结果即可。而后置操作符则必须先保存操作数原来的值,以便返回未加1之前的值作为操作的结果。逗号操作符:表达式从左向右计算。逗号表达式的结果是其最右边表达式的值。new表达式返回指向新创建对象的指针,我们通过该指针来访问对象。double *pd=new double(33);delete pd;原创 2012-10-08 10:43:17 · 606 阅读 · 0 评论 -
C++ Primer笔记(6)
与vector类型相比,数组的显著缺陷在于:数组的长度是固定的,而且程序员无法知道一个给定数组的长度。数组没有获取其容量大小的size操作,也不提供push_back操作的其中自动添加元素。如果需要更改数组的长度,程序员只能创建一个更大的新数组,然后把原数组的所有元素复制到新数组空间中去。现在C++程序更多地使用vector来取代数组,只有当性能测试表明使用vector无法达到必要的速原创 2012-09-25 16:58:05 · 613 阅读 · 0 评论 -
西南石油大学第三届信息安全大赛之QR码
这几天在玩这个,发一下关于QR码的程序吧。题目如下:题目标题说明是QR码,看来是需要用程序来把上面的数字来生成QR码。代码如下:(基于OPENCV来实现的)//由于图片太小,这里把图片放大了十倍#include #include #include "cv.h"#include "cvaux.h"#include "cxcore.h"#include "原创 2012-11-03 19:50:23 · 2418 阅读 · 0 评论 -
网络通信模型(一)
Winsock提供了一些I/O模型帮助应用程序以异步方式在一个或者多个套接字字上管理I/O。大概共有6种:阻塞(blocking)模型、选择(select)模型、WSAAsyncSelect模型、WSAEvenetSelect模型、重叠模型、完成端口模型。阻塞模式:套接字字创建时,默认工作在阻塞模式下。当recv接受不到消息时会一直等待,从面造成阻塞。好处:使用简单,适合开始学习。缺点原创 2012-11-26 10:48:04 · 1104 阅读 · 0 评论 -
封装的摄像头类
/*这个类目前封装了三种采集卡的摄像头:两个模拟摄像头采集卡MV-750,MV-E8000;个数字摄像头采集卡MV-1300。与一个学长共同完成,是完成的第一个感觉很满意的类,今天整理了一下发出来。对外接口:载入,打开,关闭,拍照。希望给对学习类封装的同学有点帮助。采集卡、摄像头是北京维视的。 by l0g1nCameraV1.h*原创 2012-12-17 09:44:05 · 2519 阅读 · 0 评论 -
md5小工具
/**************************************************************************************** AUTHOR : L0g1n* DATE : 2013-12-23* MODULE : md5ToClipboard* * MD5计算工具* 双击运行程序后会自动拷贝文件到系统目录下、添加鼠标右键菜单、原原创 2013-12-24 09:28:11 · 1093 阅读 · 0 评论 -
程序调试
我高中接触过VB语言(当时主要是用笔抄写书中代码),写过一个计算器。大学主要写 C++程序,工作后需要一些脚本,写过一段时间Python。下面主要是针对C++程序。问题分类:在编程中很容易就会出现各种各样的问题,我觉得初步可以分为下面几种类型:1、代码编译不成功。2、编译成功,运行出错。3、运行后得不到想要的结果。4、内存泄漏。下面分别来说一下:第一原创 2013-12-25 23:04:00 · 1148 阅读 · 0 评论 -
PE导出表操作
代码很简单,只是需要对PE文件头的理解,在这段代码中,我遇到的问题是结构体指针的问题,目前已经理解,具体请看代码中注释。BOOL EnumEATTable(PVOID pModuleBase){ PIMAGE_DOS_HEADER pDosHeader = NULL; PIMAGE_NT_HEADERS pNtHeader = NULL; PIMAGE_EXPORT_DIRECTORY原创 2014-02-08 13:53:54 · 1439 阅读 · 0 评论 -
主引导记录(MBR)信息分析与获取
前段时间在安装黑苹果时,发现一个问题,电脑在启动时,会找激活分区,如果没有找到,那就启动不起来。那能否写个小程序读取一下MBR信息,把激活分区换成其它,搞点恶作剧呢,于是就有了这篇读取MBR信息的文章,但是没写入,不敢尝试。通过动手学习,对硬盘MBR信息有了更好的了解。1、我的硬盘主引导记录信息及分析80 01 01 00 07 FE FF FF 3F 00 00 00 0D F0原创 2012-10-12 21:14:46 · 7233 阅读 · 1 评论 -
C++ Primer笔记(5)
class Sales_item{public:Sales_item(void);~Sales_item(void);private:string isbn;unsigned units_sold;double revenue;};这些操作和数据是类的一部分,也称为类的成员。操作称为成员函数,数据则称为数据成员。定义变量和定义数据成员存在非常重要的区原创 2012-09-19 14:11:38 · 606 阅读 · 0 评论 -
C++ Primer笔记(8)
何时发生隐式类型转换1、混合类型表达式中,其操作数被转换为相同的类型。2、用作条件表达式的被转换为bool类型3、用一表达式初始化某个变量,或赋值,表达式会转化为变量的类型。4、函数调用中也可能发生隐式类型转换。显式转换也称为强制转换,强制类型转换符:static_cast、dynamic_cast、const_cast、reinterpret_cast;何时需原创 2012-10-08 10:56:06 · 557 阅读 · 0 评论 -
C++ Primer笔记(9)
参数传递每次调用函数时,都会重新创建该函数所有的形参,此时所传递的实参将会初始化对应的形参。形参的初始化与变量的初始化一样,如果形参具有非引用类型,刚复制实参的值,如果形参为引用类型,则它是实参的别名。非引用实参表示对应实参的局部副本。对这类形参的修改仅仅改变了局部副本的值。一旦函数执行结束,这些局部变量的值也就没有了。指针形参---不能修改指针的值,但可以修改指针指向原创 2012-10-08 20:44:39 · 695 阅读 · 0 评论 -
C++ Primer笔记(2)
关键段:CRITICAL_SECTION g_cs;EnterCriticalSection(&g_cs);//加入访问共享资源的代码LeaveCriticalSection(&g_cs);由于关键段中使用了Interlocked函数,因此执行速度非常快。最大的缺点在于它们无法用来在多个进程之间对线程进行同步。一般把CRITICAL_SECTION结构作为全局变量来分配原创 2012-09-12 16:25:30 · 692 阅读 · 0 评论 -
C++ Primer笔记(3)
SRWLock允许我们区分那些想要读取资源的值的线程(读取者线程)和想要更新资源的值的线程(写入者线程)。让所有的读取者线程在同一时刻访问共享资源是可行的,因为不存在破坏数据的风险。只有当写入者想要对资源进行更新的时候才需要进行同步。这种情况下,写入者线程应该独占对资源的访问权:任何其它线程,无论是读取者还是写入者线程,都不允许访问资源。初始化VOID Initia原创 2012-09-13 15:22:22 · 587 阅读 · 0 评论 -
C++ Primer笔记(4)
定义const对象,一个用不可改变的变量代表一常数的解决办法。非const变量默认为extern,要使const变量能够在其它的文件中访问,必须显式地指定它为extern。extern const bufSize=500;引用:int ival=1024;int &refVal=ival;const引用是指向const对象的引用。const int ival=102原创 2012-09-16 17:06:03 · 496 阅读 · 0 评论 -
C++ Primer笔记(1)
volatile类型修饰符----被设计用来修饰被不同线程访问和修改的变量。如果没有volatile,要么无法编写多线程,要第编译器失去大量优化的机会(足以说明它的重要性)。Q1:一个参数是否可以同时使用const和volatile来修饰?A1:可以,例如:只读的状态寄存器,它是volatile因为它可能被意想不到地改变,它是const因为程序不应该试图去修改它。Q2:一个指针原创 2012-09-12 16:23:46 · 678 阅读 · 0 评论 -
类中线程的使用
自己写了个例子,不知这种方式是否是常用方式,欢迎交流。例子中所含有的点:1、在类中函数创建线程,创建信号量。2、在线程中调用类中函数。3、线程检测信号量,来判断是否结束线程自身。程序中包含一个类CTest,一个主函数main.cpp。//Test.h//2012.10.10 by l0g1n#pragma once#include #include #incl原创 2012-10-10 14:48:44 · 2996 阅读 · 0 评论 -
C++ Primer笔记(10)
数组形参void printValues(int*);void printValues(int[]);void printValues(int[10]);//以上三种是等价的。通常,将数组形参直接定义为指针要比使用语法定义更好。第三种方式,形参的长度容易引起误解。当编译器检查数组形参关联的实参时,它只会检查实参是不是指针、指针的类型和数组的类型是否匹配,而不会检查数组的长度原创 2012-10-09 08:32:56 · 741 阅读 · 0 评论 -
BCTF_海报探秘(300)
这个题目来自上周的BCTF比赛,题目是海报探秘(300),一张png图片中隐藏了KEY,解出KEY,具体报告,请下载:http://download.csdn.net/detail/l0g1n/7042787我对217战队的这个题目报告进行了学习,对他的代码进行注释,理解.我至少学习到了三点:png文件的解压,文件对齐的处理,还有这优雅的代码。分享给大家:#include #include原创 2014-03-14 23:38:31 · 1994 阅读 · 0 评论