自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 提升对linux的认识和理解中

一.填空题:1. 在Linux系统中,以 文件 方式访问设备 .2. Linux内核引导时,从文件/etc/fstab 中读取要加载的文件系统.3. Linux文件系统中每个文件用 i节点来标识.4. 全部磁盘块由四个部分组成,分别为引导块 、专用块 、 i节点表块 和数据存储块.5. 链接分为: 硬链接 和 符号链接 .6. 超级块包含了i节点表 和 空闲块表等重要的文件

2016-12-06 19:16:30 1590

原创 linux下 c++ 服务器开发(四)

开始客户端这边的网络编程了,就是在之前的注册按钮的触发事件里添加与QTcpSocket相关的操作,用QTcpSocket很方便的,服务器那边准备用Linux提供的Socket接口,那样才达到锻炼的效果。先来看下QTcpSocket的介绍:扫过之后直接跳转到例子看例子中,看完应该就能了解该怎么写了 仔细看帮助文档就会发现,需要在

2016-12-05 16:55:35 2954 4

原创 linux下 c++ 服务器开发(三)

要开始网络编程了,Qt上的客户端(Client)程序就用Qt自带的网络接口(听说可以跨平台),这样的话只要了解Qt网络编程就行了。服务器(Server)程序是重点,宗旨就是写出服务器程序,让服务器程序越来越厉害。。 不知道先写哪个好,那就两个一起开吧,切换着写。。服务器这边毫无头绪,不过看了下qt这边的项目文件,就学着也弄个main.cpp,server.h,ser

2016-12-04 23:41:27 4544

原创 linux下 c++ 服务器开发(二)

1.我先打开浏览器输入网址试了下能上网。2.然后打开终端,看下gcc编译器预装了没结果是没装突然脑子冒出了sudo apt-get ,看来积累也是很重要的。。先把过程复制下来,虽然现在不是很懂,但以后肯定能看懂的3.再看看g++装了没尼玛,感觉哪里怪怪的,原来没有仔细看错误报告: g++: fatal error: no in

2016-12-03 19:51:37 5599

原创 linux下 c++ 服务器开发(一)

苦逼的c++程序员还没找到工作,所以顺便开始写服务器练手。。1.我的电脑是win10的,所以先去网上下虚拟机,我下载了 ,然后安装了。2.新建了一个ubuntu 32位的虚拟电脑。(我划分的是固定大小硬盘,幸好我划得比较大60G,不然它没错误提示并默认从C盘的容量里划,提示错误后我才意识到路径没选)3.在ubuntu官网上下载了32位的,用的是服务器版没

2016-12-03 00:01:12 13397 2

转载 win10系统如何搭建vs2015+cocos2d-x 3.开发环境?

如今很多用户都安装了win10正式版,但是因为对新系统太过陌生,所以在操作时总会碰到一些问题。最近就有网友反映想要在Win10下搭建vs2015+cocos2d-x 3.9开发环境教程,可是操作了很久都没有成功,安装过程中遇到了比较多的坑。这该怎么办呢?小编下面就为大家介绍一下具体方法。第一步:安装vs2015Visual Studio 2015 旗舰版

2016-11-24 20:56:26 1116

转载 不用WinSock、CSocket,只用Win32进行网络编程...应该怎么理解?

今日在公司遇一牛人,告诉我在Windows下,网络通信要高效性能好,不要用WinSock、CSocket,只能用Win32编程...云云。....我到现在还不明白什么意思,哪位大侠能指教一下小弟?解决方案 »就是用原始套接字罢了:用socket。recv,send等windows网络编程函数。给你介绍一本书:《基于Windows的

2016-11-21 17:06:59 1910

原创 应用程序无法正常启动0xc0150002怎么解决.

用vs2008写了个控制台应用程序,又写了个dll,应用程序调用了dll里的函数,在自己电脑上生成的exe能正常运行,拷到别人电脑上测试报 “应用程序无法正常启动0xc0150002 ”,上网查半天网上方法都试过没用,后来有个关于Release和Debug生成的区别提醒了我。  用Release重新生成了应用程序可执行文件,测试结果还是一样,后来发现dll也是debug的,马上改成Re

2016-06-28 15:29:03 2281

原创 odbc 的 c api实现简单的select*结果printf 输出

1.使用C语言来操作SQL SERVER数据库,采用ODBC开放式数据库连接进行数据的添加,修改,删除,查询等操作。step1:安装 sql server 2008 (各种百度安装成功了) step2:新建数据库、表,表有4列(A、B、C、D)都是数字的,在对象资源管理器-安全性-登录名里增加了 tmy(SQL Server 身份验证)...(百度)step3:建立系统DSN,开始菜单

2016-05-19 17:27:05 1782

转载 抛出异常与栈展开(stack unwinding)

抛出异常时,将暂停当前函数的执行,开始查找匹配的catch子句。首先检查throw本身是否在try块内部,如果是,检查与该try相关的catch子句,看是否可以处理该异常。如果不能处理,就退出当前函数,并且释放当前函数的内存并销毁局部对象,继续到上层的调用函数中查找,直到找到一个可以处理该异常的catch。这个过程称为栈展开(stack unwinding)。当处理该异常的catch结束之后,紧接

2016-03-23 10:24:02 416

转载 C与C++程序的启动代码(startup)

C或者C++语言,明面上的入口函数是main(argc,argv),或者tmain、wmain、WinMain等等。进一步,很容易获知,是C Runtime的startup代码中的void mainCRTStartup(void)函数,调用了编程者写的main函数。这个函数定义在Visual C++安装目录的crt\src\目录下的某个.c文件中(视VC++的版本不同,存放的文件也不同

2016-03-18 10:21:54 4178

转载 windows下system函数返回值

在DOS下,system()只是做一个调用其他程序的工作,只要调用成功就返回0,不成功就返回-1。它不能得到被调用的程序的执行结果。要得到其他程序的执行的结果,要用spawn***()这个家族的函数。Linux和Windows中system的不同之处在于:如果子程序调用成功,但执行失败时,Linux下的system函数返回该子进程的返回值,而Windows下的sys

2016-03-09 13:53:35 8062

转载 C++的精髓——虚函数

虚函数为了重载和多态的需要,在基类中是由定义的,即便定义是空,所以子类中可以重写也可以不写基类中的函数!虚函数在基类中是没有定义的,必须在子类中加以实现,很像java中的接口函数!虚函数引入原因:为了方便使用多态特性,我们常常需要在基类中定义虚函数。class Cman{public:virtual void Eat(){……};void Move();priv

2016-03-09 10:50:47 380

转载 不读完你不会成功

花10分钟看一看少走30年弯路 HP大中华区总裁孙振耀退休感言 :如果这篇文章没有分享给你,那是我的错。如果这篇文章分享给你了,你却没有读,继续走弯路的你不要怪我。如果你看了这篇文章,只读了一半你就说没时间了,说明你已经是个“茫”人了。如果你看完了,你觉得这篇文章只是讲讲大道理,说明你的人生阅历还不够,需要你把这篇文章珍藏,走出去碰几年壁,头破血流后再回来,

2016-01-28 12:28:51 593 1

转载 数据结构和算法是程序的根本——为什么?!

2009-07-10 22:44:19   来自: BlueDavy (努力看书) 编程之美--微软技术面试心得的评论      转自博客。      应该是差不多两个月前收到了这本书,一直到最近才抽出时间来看了下,这本书的开篇的第一题现在基本已经成了经典中的经典了,相信很多人都因为这个控制CPU使用率的题从而买了这本书的,在我自己看过这本书后我同时相信买了这本书的人应该会觉得

2016-01-27 17:22:02 593

转载 CString将字符'\n'替换为指定字符串

最近写一个Excel批量处理的程序,需要将换行符替换为\r\n,但是想了很多办法却不能实现,如下:        本来是要将“\r\n”替换为"\r\n",但是发现从Excel或其他文件中读取出来的字符串在二进制窗口中发现只有换行符,即'\n'(ASCII码为0A),而回车'\r'(ASCII码为0D)却没有了,因此使用CString的Replace(_T("\r\n"),_T("\r\n

2016-01-27 15:12:51 4191

转载 MFC 获取当前工作路径和可执行文件路径

1. 获取Debug或Release所在的路径CString GetModuleDir() {  HMODULE module = GetModuleHandle(0);  char pFileName[MAX_PATH];  GetModuleFileName(module, pFileName, MAX_PATH);   CString csFullPath(pFi

2016-01-27 14:17:25 502

转载 类成员函数作为线程函数

-------------------类成员函数不能作为线程函数---------------------------    一般来说,C++的类成员函数不能作为线程函数。这是因为在类中定义的成员函数,编译器会给其加上this指针。请看下列程序:#include "windows.h" #include class ExampleTask   {    publ

2016-01-27 12:30:32 615

转载 VS2010/MFC编程入门之十(对话框:设置对话框控件的Tab顺序)

前面几节鸡啄米为大家演示了加法计算器程序完整的编写过程,本节主要讲对话框上控件的Tab顺序如何调整。       上一讲为“计算”按钮添加了消息处理函数后,加法计算器已经能够进行浮点数的加法运算。但是还有个遗留的小问题,就是对话框控件的Tab顺序问题。       运行加法计算器程序,显示对话框后不进行任何操作,直接按回车,可以看到对话框退出了。这是因为“退出”按钮是Tab顺序为1

2016-01-25 18:53:01 474

转载 复选框checkbox控件

MFC中复选框checkbox控件,至少有三种方法对其进行操作,他们是利用Cbutton成员函数GetCheck和SetCheck,第二种是利用CWnd成员函数IsDlgButtonChecked,最后就是把checkbox复选框控件与BOOL型变量相关联。一、用CButton成员函数MFC中复选框CheckBox的基类是CButton。那么就可以用GetDlgItem来获取复选框

2016-01-22 15:26:00 705

转载 关于CString的=操作符

检查自已的代码时,发现一个比较弱智的错误,是关于转码的,和CString的=操作符有关。  为了能简单重现,我模拟了一下代码:  //未有UNICODE或_UNICODE定义  USES_CONVERSION;  CString sTest(_T("test中文"));  sTest = A2W(sTest);  ::MessageBoxW(NULL,(LPCWSTR)sT

2016-01-21 15:38:57 440

转载 "无法找到“XXX.exe”的调试信息,或者调试信息不匹配。未使用调试信息生成二进制文件"的解决方法

Debug模式,运行时完全正常,但是一调试就出现对话框,显示出错信息: “无法找到“XXX.exe”的调试信息,或者调试信息不匹配。未使用调试信息生成二进制文件。” VC项目是空项目。发现其他的项目都可以调试,就“空项目”不行。解决方法:首先打开菜单 项目->项目属性页 1。选择 配置属性->链接器->调试->生成调试信息 改为 是 2。选择 配置属性->C/C++

2016-01-21 09:41:56 626

转载 ARP协议的报文格式

结构ether_header定义了以太网帧首部;结构arphdr定义了其后的5个字段,其信息用于在任何类型的介质上传送ARP请求和回答;ether_arp结构除了包含arphdr结构外,还包含源主机和目的主机的地址。定义常量#define EPT_IP   0x0800    /* type: IP */#define EPT_ARP   0x0806    /* ty

2016-01-13 16:16:59 326

转载 【TCP/IP】C语言实现Ping小程序

Ping程序一般用来测试一台主机是否可达,该程序发送一份ICMP回显请求报文给主机,并等待返回ICMP回显 应答。一般来说,如果不能Ping到某主机,那么就不能Telnet或者FTP到那台主机。反过来,如果不能Telnet到某台主机,那么通常可以用Ping程序来确定问题出在哪里。Ping程序还可以检测出到这台主机的往返时间,以表明该主机里我们有“多远”。大多数的TCP/IP实现都在内核中直

2016-01-07 14:21:25 1811

转载 select、poll、epoll之间的区别总结[整理]

select,poll,epoll都是IO多路复用的机制。I/O多路复用就通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作。但select,poll,epoll本质上都是同步I/O,因为他们都需要在读写事件就绪后自己负责进行读写,也就是说这个读写过程是阻塞的,而异步I/O则无需自己负责进行读写,异步I/O的实现会负责把数据从内核拷贝到用

2016-01-07 13:01:09 375

转载 MFC基础类及其层次结构

从类CComdTarget层层派生出绝大多数MFC中的类,其层次结构为下图所示.从根类Cobject层层派生出绝大多数MFC中的类,其层次结构为下图所示.MFC中重点类其中,CObject类是MFC提供的绝大多数类的基类。该类完成动态空间的分配与回收,支持一般的诊断、出错信息处理和文档序列化等。  CCmdTarget类主要负责将系统事件(消

2016-01-04 14:55:47 489

转载 C/C++中extern关键字详解

1 基本解释:extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。此外extern也可用来进行链接指定。      也就是说extern有两个作用,第一个,当它与"C"一起连用时,如: extern "C" void fun(int a, int b);则告诉编译器在编译fun这个函数名时按着C的规则去翻译相应的函数

2015-12-30 15:43:23 237

转载 MySQL 必须调整的 10 项配置

即使是经验老道的人也会犯错,会引起很多麻烦。所以在盲目的运用这些推荐之前,请记住下面的内容:一次只改变一个设置!这是测试改变是否有益的唯一方法。大多数配置能在运行时使用SET GLOBAL改变。这是非常便捷的方法它能使你在出问题后快速撤销变更。但是,要永久生效你需要在配置文件里做出改动。一个变更即使重启了MySQL也没起作用?请确定你使用了正确的配置文件。请确定你把配置放在了正确的

2015-12-15 16:24:38 281

转载 Run-Time Check Failure #0,The value of ESP was not properly saved 错误解决

调用DLL函数,出现错误Run-Time Check Failure #0 - The value of ESP was not properly saved across a function call. This is usually a result of calling a function declared with one calling convention with a f

2015-12-15 15:01:01 439

转载 控制台主程序通过调用DLL显示对话框

为了实现【控制台主程序通过调用DLL显示对话框】这个效果,已经折腾两天了,今天终于有了一点眉目,特此记录。首先描述一下,我为什么这么做。我在写一个基于C语言运用DLL来实现的程序,其他的部分都封装在了不同的DLL里,主程序就是一个win32控制台程序。现在希望做一个界面来显示,因此就希望在写一个DLL,调用win32的接口,来做一个显示窗体。一、主程序:#include

2015-12-15 14:50:24 1072

转载 extern "c"用法解析

引言C++保留了一部分过程式语言的特点,因而它可以定义不属于任何类的全局变量和函数。但是,C++毕竟是一种面向对象的程序设计语言,为了支持函数的重载,C++对全局函数的处理方式与C有明显的不同。extern "C"的主要作用就是为了能够正确实现C++代码调用其他C语言代码。加上extern "C"后,会指示编译器这部分代码按C语言的进行编译,而不是C++的。由于C++支持函数重载,因此

2015-12-15 14:44:40 237

转载 win32创建控件的一些问题

在我们使用CreateWindow();像一般控件建Windows扩展控件的时候我们会发现控件没有创建成功这是因为我们没有对Windows扩展控件库进行初始化,这要我们使用InitCommonControlsEx();函数来对Windows扩展控件库进行初始化,代码如下:INITCOMMONCONTROLSEX InitCtrls; InitCtrls.dwSize =

2015-12-14 19:21:34 631

转载 创建显示对话框的DLL

现在最常看见的关于DLL的问题就是如何在DLL中使用对话框,这是一个很普遍的关于如何在DLL中使用资源的问题。这里我们从Win32 DLL和MFC DLL两个方面来分析并解决这个问题。一.Win32 DLL    在Win32 DLL中使用对话框很简单,你只需要在你的DLL中添加对话框资源,而且可以在对话框上面设置你所需要的控件。然后使用DialogBox或者 CreateDialog

2015-12-11 11:13:48 767

转载 Win32 DLL和MFC DLL 中封装对话框

现在最常看见的关于DLL的问题就是如何在DLL中使用对话框,这是一个很普遍的关于如何在DLL中使用资源的问题。这里我们从Win32   DLL和MFC   DLL两个方面来分析并解决这个问题。           1.Win32   DLL               在Win32   DLL中使用对话框很简单,你只需要在你的DLL中添加对话框资源,而且可以在对话框上面设置你所需要的控

2015-12-11 10:42:21 1187

转载 MFC中,多个Button响应同一个事件

问题:有10个Button,如何让他们响应同一个事件函数,并且知道是哪个Button触发的解决方法: 1.让十个Button的资源号连续2.Dlg.h中添加代码:void   OnButtonClicked(UINT   uId) ;3.Dlg.cpp的MESSAGE_MAP中添加代码:ON_CONTROL_RANGE(BN_CLICKED, IDC_BUTTON1,

2015-12-11 09:36:36 4194 3

转载 MySQL数据导出与导入

发一篇基础的,关于MySQL数据导出导入的文章,目的有二:1.备忘2.供开发人员测试工具mysqlmysqldump应用举例导出导出全库备份到本地的目录mysqldump -u$USER -p$PASSWD -h127.0.0.1 -P3306 --routines --default-character-set=utf8

2015-12-08 16:01:56 349

转载 C/C++中取消宏定义

C/C++中可以用 #undef xxx 来取消宏xxx的定义。举例如下#include using namespace std;int main(int argc, char* argv[]){// xxx is definedbool b = true;#define xxx#ifdef xxx        cout // th

2015-12-08 09:57:19 1000

转载 使用 CreateTimerQueueTimer 定时器时需要注意的一个参数

转自 http://blog.waterlin.org/articles/a-parameter-of-createtimerqueuetimer.html最近在使用定时器的时候,被一个小细节坑了,偶尔导致 coredump,费了好大的力气才找到原因,现在整理一下备忘。我采用了如下方式来生成了定时器:if (!CreateTimerQueueTimer( &m_hTimer

2015-12-07 13:14:09 4123

转载 mysql 开启查询缓存方法与查询例子

mysql 开启查询缓存可以有两种方法来开启一种是使用set命令来进行开启,另一种是直接修改my.ini文件来直接设置都是非常的简单的哦。开启缓存,设置缓存大小,具体实施如下:1、修改配置文件,windows下是my.ini,linux下是my.cnf;在配置文件的最后追加上:query_cache_type = 1query_cache_size = 60

2015-11-27 12:16:42 608

转载 CDC、HDC、pDC

1.CDC *pDC和HDC hdc有什么不同,类似的有CWnd *pWnd和HWnd?pDC是类指针HDC是windows句柄通过pDC获得hdc:HDC hdc=pDC->GetSafeHdc();通过hdc获得pDC:CDC *pDC=new CDC;pDC->Attach(hdc);2.hDC和CDC有本质区别HDC是WINDOWS的一种数据

2015-11-10 13:16:13 580

空空如也

空空如也

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

TA关注的人

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