自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 恢复 Linux 终端默认的字体、背景颜色

在运行某个会改变字体风格的程序,并出现异常后。你有机会得到一个色彩斑斓的终端。在这时候,如果你输入正常的命令后,仍不能恢复。那么,你可能需要以下命令,以恢复正常状态:#恢复默认的终端主题tput init#恢复默认的终端主题tput reset#直接重启reboot...

2020-05-15 11:36:37 2537

原创 关于 TCP 流通信

TCP(Transmission Control Protocol),传输控制协议,属于传输层的协议。TCP是无保护消息边界的流通信协议,是基于不可靠连接的可靠传输。它采用数据流(stream)的概念管理传输过程,区别与UDP的数据包的传输方式。理论上TCP是不会丢失数据。如有出现丢包、乱序的问题,分别是因为:1.未有处理发送(Send)的错误重发数据,造成丢包;2.多线程同步问题,导致的......

2020-03-16 18:09:17 407

原创 使用STL的copy

STL中的<algorithm>有copy和copy_n等函数,用于对数组和容器拷贝用法是将对应的来源source和目的地destination的迭代器iterator,如果你使用的是copy_n还需要指定拷贝的长度count,将其逐一填入形参如果是在Windows环境下,你还需要使用模板类stdext::checked_array_iterator来包装你的目标数组,它被包含...

2019-11-05 18:05:12 240

原创 使用 CreateFile 打开大于 COM9 的端口 GetLastError 返回 ERROR_FILE_NOT_FOUND(2)

如果你在Windows环境下,使用串口通讯(Serial Communication),你会使用到CreatFile()来初始化/打开对应的串口那么,你需要注意,在使用大于COM9的端口时,应该这样写: unsigned long fdwAccess = GENERIC_READ | GENERIC_WRITE; CreateFileA( "\\\\.\\COM10......

2019-10-16 11:59:21 840

原创 memcpy被卡住了

昨天遇到了一件令人很疑惑的情况。我为系统封装新的CameraLink采集卡SDK,如往常一样,调用Grab()开始采集,然后FrameReceived()被SDK回调,我在里面使用了memcpy()复制图像数据供程序使用。接下来,问题就发生在我调用SDK提供的函数修改了采集图像的大小之后,这时,我再次调用Gtab(),FrameReceived()被回调,但它卡住了,在memcpy()这里卡住了,...

2019-10-15 17:21:54 2454

原创 Visual Studio 编译时出现无故错误

字符编码问题:在svn中下载的文件偶有这种情况1.unknown character "0x40"解决方法:定位指定行,把所有空格(0x40)删除,再重新输入2.expected #endif解决方法:定位指定行,把换行符删除,在重新输入...

2019-03-20 21:09:43 1259

转载 浮点数值的二进制储存

转 float浮点数的二进制存储方式及转换注,笔者有少量的笔误,但不影响阅读

2019-03-05 15:34:35 402

转载 MSVC在窗口程序 中创建 控制台

//1. 首先调用AllocConsole创建一个控制台窗口 AllocConsole(); //2. 但此时调用cout或者printf都不能正常输出文字到窗口(包括输入流cin和scanf), 所以需要如下重定向输入输出流: FILE* stream; freopen_s(&stream, "CON", "r", stdin);//重定向输入流 freopen_s(&...

2018-03-22 15:37:15 1168

原创 C++关于delete的使用

1. delete安全用法:void safe_release(){ void* t = m_ptr; //先赋值nullptr,再delete,可防止被在其它线程占用时,引起的错误 m_ptr = nullptr; //方便以后检查指针是否有效,亦防止再次访问无效的指针 delete t; //释放内存}2. delete[]void fun(){ ...

2018-02-08 18:06:44 4760

转载 内存映像图

内存映像图内存映像象图内容权限栈区函数中的普通变量可读可写堆区动态申请的内存可读可写静态变量区static修饰的变量可读可写数据区用于初始化变量的常量只读代码区代码指令只读1. 栈区:普通变量(非new, 非const...)2. 堆区:使用new动态分配的(或者, 其他动态分配方法)3. 静态变量区:static修饰的4. 数据区:例如, 初始化字符指针的--char*p="this is a ...

2018-02-01 15:10:29 2059

原创 [C++] 关于 构造函数(construction) 析构函数(destruction)中调用虚函数

在“构造函数”/“析构函数”中,调用虚函数需要通过类命调用“成员函数”通常和多继承下,对有歧义的函数,需要“类名::函数名”的方式调用,如,定义与“基类的函数”同名的函数(特别是'重写')class Animal{public: Animal() { ... }; virtual void Run() { ... } virtual void Walk(){ ... }

2018-02-01 15:07:03 1166

转载 [C++] 向上/向下取整函数 ceil() floor()

[C++] C/C++ 取整函数ceil(),floor()1. ceil() 向上取整,往较大的正数靠齐:ceil(1.1) = 2;当小数时:ceil(-1.1) = (-1)2. floor() 向下取整,往较小的正数靠齐:ceil(1.1) = 1;当小数时:ceil(-1.1) = (-2)3. round() 四舍五入4. 头文件是5. 其他语言类似

2018-02-01 14:40:58 1669

转载 关于 C++中重载、重写(虚函数)、重定义

重载overload:函数名相同,参数不同的函数(但不能通过返回值实现重载) 重写override:(可以理解重覆盖) 子类重新定义,父类中有‘相同名称’和‘参数’的虚函数(virtual); 是实现“多态的手段” 重定义redefining: 将父类中同名的函数隐藏(参数表可以不同)  总结:"函数重载"发生在类(/命名空间)内 "重写/虚函数"是"多态性"的实现方法,发生...

2018-01-25 10:09:15 722

原创 [C++]中4种‘类型转换’方式

1.C++四种类型转换机制(参考)2. C++中四种类型转换方式(参考) dynamic_cast&lt;new_type&gt;(var) reinterpret_cast&lt;new_type&gt;(var) static_cast&lt;new_type&gt;(var) const_cast&lt;new_type&gt;(var)1. dynamic_cast:(...

2018-01-25 09:29:14 385

转载 SendMessage(同步)与PostMessage(异步)的区别

PostMessage与SendMessage的区别(转载)   1、PostMessage会将消息压入窗口所在线程的消息队列,然后返回;而SendMessage则不经过消息队列,SendMessage可认为是直接调用了该窗口的窗口过程,因此在我们需要获得消息处理后的返回值的时候,就要用到SendMessage。    例如:当在程序中指定如下使用:PostMessage(hWnd, WM_MSG...

2018-01-19 20:41:52 639

原创 Visual Studio(MFC) 警告:需要有 dll 接口由 class“XXX的客户端使用

暂时,未找到解决方法。但此警告亦未发现对项目有影响。

2017-05-27 10:58:35 3444 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除