![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
枯藤闲画云
不困于心,不乱于情,不畏将来,不念过往.如此,安好.
展开
-
Unix C语言编写基于多线程的小型并发服务器
转自:https://my.oschina.net/zzw922cn/blog/493896线程介绍 线程就是运行在一个进程上下文中的逻辑流,一般来说,程序是由每个进程中的单一线程来组成的。但是,我们实际上也可以编写一个进程里同时运行多个线程的程序,线程是由内核调度的,从进程间通信角度来看,一个给定进程内的所有线程共享同样的全局变量。每个线程具有独立的线程上下文,包括一个唯一的整数线程ID,栈...转载 2018-03-07 16:54:41 · 606 阅读 · 0 评论 -
(int)a、&a、(int)&a、(int&)a的区别,很偏僻的题
转自:https://blog.csdn.net/snlying/article/details/4649275#include <iostream>#include <stdio.h>#include <string.h>#include <conio.h>using namespace std;int main()...转载 2018-05-16 13:12:09 · 719 阅读 · 0 评论 -
C++中const迭代器 和 const_iterator的区别
转自:https://blog.csdn.net/touzani/article/details/1637776话说这两个区别非常大,但是不太好理解啊,而且感觉解释也是各种绕口。说一下我自己的理解吧。 const迭代器,顾名思义,就是不能改变的迭代器,是常量,其性质是由const决定的。比如说我们这样定义一个const迭代器。[cpp] view plain copy vector<i...转载 2018-05-16 17:47:58 · 246 阅读 · 0 评论 -
C++---------this总结
转自:https://blog.csdn.net/jx232515/article/details/527591271.什么是this先要理解class的意思,class应该理解为一种类型,象int,char一样,是用户自定义的类型。(虽然比int char这样build-in类型复杂的多,但首先要理解它们一样是类型)。用这个类型可以来声明一个变量,比如int x, myclass my等。这样就...转载 2018-05-30 17:55:11 · 426 阅读 · 0 评论 -
C语言初探 之 printf压栈顺序(printf("%d %d %d %d %d %d\n",a++, ++a, a++, ++a, a++, ++a ))
凡是-- ++ 以及 没有++ --的在前的都是最后的结果 ,++ --再后的就是该是什么值就是什么值对于a++的结果,是有ebp寻址函数栈空间来记录中间结果的,在最后给printf压栈的时候,再从栈中把中间结果取出来;而对于++a的结果,则直接压寄存器变量,寄存器经过了所有的自增操作。 转自:https://blog.csdn.net/decisiveness/article/details/4...转载 2018-06-13 16:54:32 · 1780 阅读 · 0 评论 -
C++---------------命名空间
命名空间可以放到头文件里面,但是尽量不要这么做。我下面的例子基本把情况概括。没有注释。。。如有不妥请大神指教1.第一种方式,不带类的命名空间// test.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <iostream>#include <typeinfo.h>namespace mybuff{...原创 2018-08-16 16:42:25 · 171 阅读 · 0 评论 -
C++----------------可变参数
//可变参数序列/* 头文件中的内容#define _INTSIZEOF(n) ((sizeof(n)+sizeof(int)-1)&~(sizeof(int) - 1) )#define va_start(ap,v) ( ap = (va_list)&v + _INTSIZEOF(v) ) //第一个可选参数地址#define va_arg(ap,t) ( *(t ...原创 2018-08-17 14:37:28 · 122 阅读 · 0 评论 -
C++-------对handle的理解
转自:https://blog.csdn.net/Godsight/article/details/52738175我觉得自己对于指针理解比较透彻了,但关于句柄的理解,就容易犯理解成指针的错误. 一般说:句柄是资源(或项目)的唯一标识. 俺觉得这其实说得很不明白的,现在我想问的是句柄到底是怎么标识资源的: 1,句柄在32位机上是32位整型吗? 2,当HANDLE handle;声明句柄...转载 2018-08-21 15:56:44 · 28575 阅读 · 7 评论 -
MFC------------01 使用windows sdk api 弹出消息框
使用编译器vs2010,通过windows API 弹出消息框1、打开编译器,新建项目--->空项目 在底部框中输入工程名字和选择工程存放路径 然后点击确定。2、右键源文件,操作如图3、如图输入名称将下列代码粘贴进去运行即可。代码如下#include <Windows.h>int WINAPI WinMain(HINSTANCE hI...原创 2018-09-27 14:16:17 · 924 阅读 · 0 评论 -
MFC------------02windows编程模型(未完)
我们可以用windows.h的库编写界面应用 其实就是对更重消息进行处理,在windows编程中,一切皆句柄下列图片截取于猎豹学院的视频代码如下#include <Windows.h>/** H是Handler的简写 事件驱动编程模型 句柄:在window 对任何东西操作都是靠句柄操作的。windows一切都是窗口。 C 一切皆指针,windows 一...原创 2018-09-27 14:40:23 · 207 阅读 · 0 评论 -
MFC------------08创建MFC工程(不用向导)
为了不受视图框架的约束,我们先不用向导做些简单的工作熟悉一下如何使用类视图进行添加一些代码和消息。但是大的工程还是需要用到MFC的向导。2、34、按照步骤3在头文件夹右击添加头文件添加完毕后书写如下代码.h文件 #include <afxwin.h>class CMyApp : public CWinApp{};class C...原创 2018-09-27 16:22:02 · 327 阅读 · 0 评论 -
const 引用 和 非 const 引用
非const引用只能绑定到与该引用同类型的对象const引,用可以绑定到不同但相关的类型的对象或绑定到右值关于const引用,测试用例#include <iostream>#include <string>using namespace std;int main() { double b = 2.14; const int &a=b;//成...原创 2018-05-16 10:59:09 · 1741 阅读 · 1 评论 -
原码 反码 补码 概念 原理 详解
转自:https://www.cnblogs.com/baiqiantao/p/7442907.html参考:http://www.cnblogs.com/zhangziqiu/archive/2011/03/30/ComputerCode.html http://blog.csdn.net/liushuijinger/article/details/7429197#commentsSystem....转载 2018-05-15 11:23:55 · 599 阅读 · 0 评论 -
浅析为什么char类型的范围是 —128~+127
转自:https://blog.csdn.net/daiyutage/article/details/8575248在C语言中, signed char 类型的范围为-128~127,每本教科书上也这么写,但是没有哪一本书上(包括老师)也不会给你为什么是-128~127,这个问题貌似看起来也很简单容易, 以至于不用去思考为什么,不是有一个整型范围的公式吗: -2^(n-1)~2^(n-1)-1 ...转载 2018-05-15 11:12:58 · 457 阅读 · 0 评论 -
一个Linux下C线程池的实现
转自:http://blog.163.com/code_fantasitic0/blog/static/187050004201210210105728/linux c 下线程池#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <sys/types.h>#incl...转载 2018-03-07 17:00:37 · 139 阅读 · 0 评论 -
strcpy 和 memcpy 的区别
strcpy和memcpy主要有以下3方面的区别。1、复制的内容不同。strcpy只能复制字符串,而memcpy可以复制任意内容,例如字符数组、整型、结构体、类等。2、复制的方法不同。strcpy不需要指定长度,它遇到被复制字符的串结束符"\0"才结束,所以容易溢出。memcpy则是根据其第3个参数决定复制的长度。3、用途不同。通常在复制字符串时用strcpy,而需要复制其他类型数据时则一般用me...原创 2018-02-28 13:19:58 · 114 阅读 · 0 评论 -
linux 读写锁应用实例
转载自:http://blog.csdn.net/dsg333/article/details/22113489/*使用读写锁实现四个线程读写一段程序的实例,共创建了四个新的线程,其中两个线程用来读取数据,另外两个线程用来写入数据。在任意时刻,如果有一个线程在写数据,将阻塞所有其他线程的任何操作。*/#include <errno.h>#include <pthread.h&...转载 2018-03-01 14:33:24 · 516 阅读 · 0 评论 -
linux 下epoll与线程池结合使用的简单实例
转自:http://blog.csdn.net/xilango/article/details/52824486本文针对初学socket epoll和多线程的小伙伴们对库函数的简单概述:注释: 1.socket()函数------作用 :用于根据指定的地址族、数据类型和协议来分配一个套接口的描述字及其所用的资源(创建套接字) 第一个参数:一个地址描述;(本文用的...转载 2018-03-09 17:54:48 · 376 阅读 · 0 评论 -
STL标准库六大组件 关系 作用
转自:http://blog.csdn.net/qq_31108501/article/details/55049937STL六大组件简介1、容器(Containers):各种数据结构,如Vector,List,Deque,Set,Map,用来存放数据,STL容器是一种Class Template,就体积而言,这一部分很像冰山载海面的比率。 2、算法(Algorithms):各种常用算法如Sort...转载 2018-03-02 09:15:23 · 269 阅读 · 0 评论 -
常用数据结构和算法
常用数据结构栈、队列、链表、数组、哈希、二叉树、堆、并查集、字典树常用算法各种搜索、分治、宽度优先搜索、广度优先搜索、回溯法、双指针、动态规划、扫描线、快排。...原创 2018-03-16 13:26:57 · 168 阅读 · 0 评论 -
GetMemory的典型例子
转自:http://blog.csdn.net/wl_haanel/article/details/5186568//NO.1: 程序首先申请一个char类型的指针str,并把str指向NULL(即str里存的是NULL的地址,*str为NULL中的值为0),调用函数的过程 中做了如下动作:1申请一个char 类型的指针p,2把str的内容copy到了p里(这是参数传递过程中系统所做的),3为p指...转载 2018-03-16 13:33:49 · 149 阅读 · 0 评论 -
多线程死锁的产生以及如何避免死锁
转自:http://blog.csdn.net/ls5718/article/details/51896159一、死锁的定义多线程以及多进程改善了系统资源的利用率并提高了系统 的处理能力。然而,并发执行也带来了新的问题——死锁。所谓死锁是指多个线程因竞争资源而造成的一种僵局(互相等待),若无外力作用,这些进程都将无法向前推进。下面我们通过一些实例来说明死锁现象。先看生活中的一个实例,2个人一起吃饭...转载 2018-03-06 09:37:44 · 168 阅读 · 0 评论 -
linux下生成静态库和动态库
转自:https://blog.csdn.net/ddreaming/article/details/53096411一、动态库、静态库简介库是写好的现有的,成熟的,可以复用的代码。现实中每个程序都要依赖很多基础的底层库,不可能每个人的代码都从零开始,因此库的存在意义非同寻常。本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行。库有两种:静态库.a(win 系统下是lib)和动态...转载 2018-05-14 16:29:37 · 12660 阅读 · 3 评论 -
补码原理——负数为什么要用补码表示
转自:https://blog.csdn.net/leonliu06/article/details/78685197文首 我们都知道负数在计算机中是以补码(忘了补码定义的戳这里)表示的,那为什么呢?本文尝试了解补码的原理,而要想理解它,首先得理解算术中“模”的概念。所以首先看一下什么是模,然后通过一个小例子来理解补码。1 模(Modulo)1.1 什么是模数 In mathematics, ...转载 2018-05-15 10:57:06 · 151 阅读 · 0 评论 -
MFC-----------09GDI设备描述表类
CClientDC 用于窗口客户区画图,用于ONpain方法之外 当对像值位NULL 的时候 效果等同于CWindowDCCPaintDC 用于窗口客户区画图,只能用于onpaint方法之内CWindowDC 用于在屏幕任意位置画图CMetaFileDC 操作源文件画图新建项目下一步然后一直下一步,直至完成创建完毕后,会产生如下代码:...原创 2018-09-27 19:00:28 · 403 阅读 · 0 评论