![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
文章平均质量分 56
maomaoxiaogang
blogs
展开
-
有效位数之浮点数存储
第一段 占 1bit,表示符号位。代称为 S(sign)第二段 占 8bits,表示指数。代称为 E(Exponent)。第三段 占 23bits,表示尾数。代称为 M(Mantissa)。S:符号位 0代表正数 1代表负数E:指数位 对于任何数来说 都可以满足M: 尾数位 也就是小数位,但是这里叫偏移量可能好一些 根据...原创 2021-12-29 17:14:07 · 824 阅读 · 0 评论 -
管道通讯
管道是一段被进程用来通讯的共享内存。创建pipe的进程称为服务端,连接到一个管道的进程叫做客户端。一个进程向管道中写入信息,接着另外一个进程读出其中数据。 有命名和匿名两种管道,相比之下匿名管道所需开销较小。这里用管道这个名词表明它是一个信息通道,概念上来说,一个管道连接两端。单向管道允许一端写另一段读,双向管道允许一个进程既可以读又可以向管道写数据。1、匿名管道匿名管道...原创 2020-01-05 23:44:19 · 391 阅读 · 0 评论 -
编码方式(III)
各种编码方式可能涉及到的读取问题,以下函数或内部使用函数供参考1、是否utf8bool IsTextUTF8(const char* str, long length){ unsigned char chr; int nBytes = 0; // UFT8可用1-6个字节编码,ASCII用一个字节 bool bAllAscii = true; // 如果全部都是ASCII, 说...转载 2018-12-31 16:11:47 · 296 阅读 · 0 评论 -
类型转换的背后
在C中,默认的基础数据类型均为signed,现在我们以char为例,说明(signed) char与unsigned char之间的区别 首先在内存中,char与unsigned char没有什么不同,都是一个字节,唯一的区别是,char的最高位为符号位,因此char能表示-128~127, unsigned char没有符号位,因此能表示0~255,这个好理解,8个bit,最...原创 2018-12-24 23:07:10 · 116 阅读 · 0 评论 -
MFC双缓冲绘图
在VC/MFC用CDC绘图时,频繁的刷新,屏幕会出现闪烁的现象,CPU时间占用率相当高,绘图效率极低,很容易出现程序崩溃。 所谓双缓冲技术,百度百科的解释:双缓冲即在内存中创建一个与屏幕绘图区域一致的对象,先将图形绘制到内存中的这个对象上,再一次性将这个对象上的图形拷贝到屏幕上,这样能大大加快绘图的速度。 当我们看电视时,看到的屏幕称为OSD层,也就是说,只有转载 2017-09-02 14:53:12 · 1065 阅读 · 0 评论 -
SQlite3使用
SQLite3 使用1、在SQLite官方网站下载SQLite3的源程序,下载地址:http://www.sqlite.org2、本文使用下载原码的方式编译并使用,也可下载动态库进行使用3、将sqlite3.hsqlite3ext.h shell.c加入工程目录4、使用:在工程下包含sqlite3.h就可以,代码如下#include #include "s转载 2017-07-20 22:44:10 · 685 阅读 · 0 评论 -
Log4cxx编译和使用
Log4cxx编译和使用转载 2017-07-19 23:33:34 · 2274 阅读 · 0 评论 -
线程互斥和同步(二 方式)线程
线程间的同步方法大体可分为两类:用户模式和内核模式。顾名思义,内核模式就是指利用系统内核对象的单一性来进行同步,使用时需要切换内核态与用户态,而用户模式就是不需要切换到内核态,只在用户态完成操作。用户模式下的方法有:原子操作(例如一个单一的全局变量),临界区。内核模式下的方法有:事件,信号量,互斥量。下面我们来分别看一下这些方法:1、临界区(Critical Secti原创 2017-07-14 22:43:50 · 384 阅读 · 0 评论 -
线程互斥和同步(一简介)
线程互斥和同步——概念一:基础概念 进程是资源分配的基本单位;线程是系统调度的基本单位。平时我们写的程序都是作为线程运行的;进程可以看做是包括一系列线程和资源的统称;一个进程至少包括一个线程(主线程,进入main函数时产生的);在其中可以创建其它线程,也可以不创建。同一进程间的线程究竟共享哪些资源呢,而又各自独享哪些资源呢? 共享资源a. 堆 由于堆是在进程空间中开辟出原创 2017-07-14 22:14:11 · 1709 阅读 · 0 评论 -
dump生成与分析
来源:软件发生异常,没有调试环境,怎么快速定位问题?遇到这类问题,最有的信息就是生成dump文件,然后通过dump文件查看callstack等信息定位。 Dump文件生成原理:利用dbghelp使用SetUnhandledExceptionFilter设置回调函数生成dump文件,后分析异常地方。本文实现方式:分装类在MFC程序中调用并分析1、类的实现//Creat原创 2017-07-11 23:44:18 · 946 阅读 · 0 评论 -
extern "C" 与 __stdcall
转自http://blog.csdn.net/huapeng_guo/article/details/7672337C語言中extern cc与c++程序连接问题 它们之间的连接问题主要是因为c c++编绎器对函数名译码的方式不能所引起的,考虑下面两个函数 /* c*/ int strlen(char* string) { ... } //c++ int strlen(c转载 2016-08-07 19:54:20 · 328 阅读 · 3 评论 -
文件路径
文件路径就是文件在电脑(服务器)中的位置,表示文件路径的方式有两种:相对路径和绝对路径。 路径表示:标识符号说明/路径标识.当前目录..上一层目录 “.”和“..”常与“/”结合使用表示各个路径层次:路径转载 2016-08-01 22:58:20 · 575 阅读 · 0 评论 -
static const在c++
本文转自:http://www.cnblogs.com/dancheblog/p/3557177.html static 是c++中很常用的修饰符,它被用来控制变量的存储方式和可见性,下面我将从 static 修饰符的产生原因、作用谈起,全面分析static 修饰符的实质。 static 的两大作用:一、控制存储方式: static被引入以告知编译器,转载 2016-07-24 22:46:17 · 234 阅读 · 0 评论