
c/c++/vc
文章平均质量分 72
热力西雅图
这个作者很懒,什么都没留下…
展开
-
如何在Dll中导出class
说明:新建两个工程,其中一个是dll工程(我的示例程序中这个工程名为DllClass),另一个是测试和使用dll的工程(名字为DllClassTest)注意点:1。Dll工程编译完成后,将.lib和.dll文件拷贝到测试和使用dll的工程的适当目录下(我的程序是release目录),然后将Dll工程中的导出类的头文件(以下简称头文件)拷贝到测试和使用dll的工程的适当目录下(在我的程序中是原创 2006-05-29 18:40:00 · 2064 阅读 · 0 评论 -
学SOCKET
端口号常识: 端口号被从1 开始分配。 通常端口号超出255 的部分被本地主机保留为私有用途。 1到255 之间的号码被用于远程应用程序所请求的进程和网络服务。 每个网络通信循环地进出主计算机的TCP 应用层。它被两个所连接的号码唯一地识别。这两个号码合起来叫做套接字. 组成套接字的这两个号码就是机器的IP 地址和TCP 软件所使用的端口号。套接字的三种类原创 2009-07-26 12:18:00 · 675 阅读 · 0 评论 -
C打开文件的追加参数
fopen(打开文件) 相关函数 open,fclose 表头文件 #include 定义函数 FILE * fopen(const char * path,const char * mode); 函数说明 参数path字符串包含欲打开的文件路径及文件名,参数mode字符串则代表着流形态。 mode有下列几种形态字符串: r 打开只读文件,该文件必须存在。 r+ 打开可读写的文件,该文件必须存在。原创 2009-07-27 22:17:00 · 655 阅读 · 0 评论 -
Visual C++ 插件
Visual Assist(强烈推荐)网址:http://www.wholetomato.com/功能:VA从5.0一直到现在的VAX,功能越来越强大,除了以前版本中的自动识别各种关键字,系统函数,成员变量,自动给出输入提示,自动更正大小写错误,自动标示错误等等以外,最新的版本中还在WorkSpace窗口中加入一个VA View,可以更方便的查找工程中的文件、类和变量。原创 2009-08-02 20:11:00 · 656 阅读 · 0 评论 -
c/c++ 库大全
基础类1、 Dinkumware C++ Library 参考站点:http://www.dinkumware.comP.J. Plauger编写的高品质的标准库。P.J. Plauger博士是Dr.Dobbs程序设计杰出奖的获得者。其编写的库长期被Microsoft采用,并且最近Borland也取得了其OEM的license,在其C/C++的产品中采用Dinku原创 2009-08-02 20:37:00 · 1073 阅读 · 0 评论 -
C语言:内存字节对齐详解
C语言:内存字节对齐详解地址:http://hi.baidu.com/jjpro/blog/item/06ea380859eac433e82488f8.html 一、什么是对齐,以及为什么要对齐:1. 现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定变量的时候经常在特定的内存原创 2009-08-02 20:20:00 · 512 阅读 · 0 评论 -
超精确计时
一,首先看一下时间换算单位,澄清一下概念:1秒=1000毫秒(ms) 1毫秒=1/1,000秒(s) 1秒=1,000,000 微秒(μs) 1微秒=1/1,000,000秒(s) 1秒=1,000,000,000 纳秒(ns) 1纳秒=1/1,000,000,000秒(s) 1原创 2009-07-02 11:26:00 · 1366 阅读 · 0 评论 -
开发人员一定要加入收藏夹的网站
开发人员一定要加入收藏夹的网站收藏http://www.gotapi.com/ 语言:英语 简介:HTML,CSS,XPATH,XSL,JAVASCRIPT等API的查询网站。http://www.w3schools.com/ 语言:英语 简介:W3C制定的标准诸如XML,HTML,XSL等等的在线学习教程。http://www.xml.org.cn/ 语言:中文 简介:可以说是XML的中国官方原创 2009-07-05 17:32:00 · 1213 阅读 · 0 评论 -
一些不安全的常用的C函数
1 gets() gets()由于不能进行拷贝了的buffer的size指定、所以有BufferOverflow的问题。使用代替函数进行Buffer的Size指定, 或者使用fgets()。 2 scanf() 不使用scanf()、把scanf_s()、sscanf()作为代替函数来使用。 3 strcpy() strcpy()不检查copy先的Buf原创 2009-10-27 13:35:00 · 1011 阅读 · 0 评论 -
买不起书的来下电子书吧,我搜集的,超全
N多计算机精品免费视频下载,不要别后悔啊 《VC知识库5周年精华珍藏版》 http://www.ibeifeng.com/read.php?tid=592&u=83 C语言经典算法100例(强烈推荐) http://www.ibeifeng.com/read.php?tid=1334&u=83 《C++程序调试实用手册》(DeBUGGING C++) http://www.ibeifeng.co原创 2009-11-08 20:29:00 · 2703 阅读 · 0 评论 -
高效的两段式循环缓冲区──BipBuffer(1)
原文地址:http://www.codeproject.com/KB/IP/bipbuffer.aspx 1、Introduction 简介Instead of keeping one head and tail pointer to the data in the buffer, it maintains two revolving regions, allowing for fast翻译 2009-12-16 13:35:00 · 2606 阅读 · 0 评论 -
高效的两段式循环缓冲区──BipBuffer(2)
原文地址:http://www.codeproject.com/KB/IP/bipbuffer.aspx 继续上一篇的内容。。。4 The Advantages of the Circular Buffer 使用循环缓冲区的优点There are a number of key advantages to using a circular buffer for the temporar翻译 2009-12-16 13:39:00 · 3455 阅读 · 1 评论 -
高效的两段式循环缓冲区──BipBuffer(3)
原文地址:http://www.codeproject.com/KB/IP/bipbuffer.aspx 继续上一篇的内容。。。 7 Characteristics of the Bip-Buffer BipBuffer的特点The upshot of all of this is that on average, the buffer always has the maximal翻译 2009-12-16 13:55:00 · 2975 阅读 · 0 评论 -
调用约定(Calling convention)详解(__stdcall,__cdecl,__fastcall)
#define CALLBACK __stdcall #define WINAPI __stdcall #define WINAPIV __cdecl #define APIENTRY WINAPI #define APIPRIVATE __stdcall #defin原创 2010-03-12 10:21:00 · 2589 阅读 · 1 评论 -
深入理解C语言指针的奥秘
指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。 要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的 类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让我们分别说明。 先声明几个指针放着做例子: 例一: (1)int*ptr; (2)char*ptr; (3)int**ptr; (4)i原创 2008-09-05 12:48:00 · 528 阅读 · 0 评论 -
Linux下升级gcc的方法-简明扼要
由于工作主要平台换到了linux上,而linux因为源上没有比较新的gcc,只有4.1.2,而我们用到了C++11, 只好自己升级了,升级方法也比较简单,就是耗时间。1.下载gcc最新的源码包 wget http://gcc.skazkaforyou.com/releases/gcc-4.9.1/gcc-4.9.1.tar.gz2.解压缩 tar -xf gcc-4.9.1原创 2016-06-14 15:35:10 · 7189 阅读 · 0 评论 -
Win32应用程序中进程间通信方法分析与比较
Win32应用程序中进程间通信方法分析与比较 1 进程与进程通信 进程是装入内存并准备执行的程序,每个进程都有私有的虚拟地址空间,由代码、数据以及它可利用的系统资源(如文件、管道等)组成。多进程/多线程是Windows操作系统的一个基本特征。Microsoft Win32应用编程接口(Application ProgrammingInterface, AP原创 2009-05-16 17:48:00 · 447 阅读 · 0 评论 -
C++异常处理
异常处理1.1 抛出异常 如果在代码中出现了异常的情况, 程序员可以创建一个包含错误信息的对象并能过关键字throw抛出当前语境, 将错误发送到一个更大范围的语境中.例如:view plaincopy to clipboardprint?try { if ( ! resourceAvail ) throw MyExceptionClass( "Resour原创 2009-07-27 22:25:00 · 1253 阅读 · 0 评论 -
C语言字符串 数字转换函数大全
atof(将字符串转换成浮点型数)atoi(将字符串转换成整型数)atol(将字符串转换成长整型数)strtod(将字符串转换成浮点数)strtol(将字符串转换成长整型数)strtoul(将字符串转换成无符号长整型数)toascii(将整型数转换成合法的ASCII 码字符)toupper(将小写字母转换成大写字母)tolower(将大写字母转换成小写字母) atof(将字符串转换成浮原创 2009-07-27 22:18:00 · 964 阅读 · 0 评论 -
用C语言编写Windows服务程序的五个步骤
前一段时间我写了一篇通过写服务的形式来达到一些监视程序运行的目的的文章,至于如何在windows下写服务我没有详细介绍,今天就让我们一起看看如何来写服务程序。 Windows 服务被设计用于需要在后台运行的应用程序以及实现没有用户交互的任务。为了学习这种控制台应用程序的基础知识,C(不是C++)是最佳选择。本文将建立并实现一个简单的服务程序,其功能是查询系统中可用物理内存数量,然后将结果写原创 2006-05-29 18:35:00 · 1628 阅读 · 0 评论 -
C++中运算符优先级的学习注解
提起运算符的优先级,很多了解C++的过来人都会想:这有什么难的?不就是谁的优先级高就算谁么。确实如此,运算符的优先级不是一个大问题,但对于一个初学者来说,却经常容易在上面迷糊与犯错。而对于一个了解C++的人来说,我相信也会偶尔在上面摔倒,不信就继续往下读。 “优先级高的先运算”带来的困惑 C++中运算符的优先级有一张表,表里把运算符进行了分类,这张表是不需要死记硬背的,只要有个大致的轮廓就原创 2006-06-20 09:55:00 · 1322 阅读 · 0 评论 -
C/C++头文件一览
C、传统 C++#include //设定插入点#include //字符处理#include //定义错误码#include //浮点数处理#include //文件输入/输出#include //参数化输入/输出#include //数据流输入/输出#include //定义各种数据类型最值常量#include //定原创 2006-06-15 11:24:00 · 1056 阅读 · 0 评论 -
我的Windows Socket API 使用经验
我的Windows Socket API 使用经验 本文是我在进行MS-Windows、HP-Unix网络编程的实践过程中总结出来的一些经验,仅供大家参考。本文所谈到的Socket函数如果没有特别说明,都是指的Windows Socke原创 2006-06-29 17:13:00 · 1359 阅读 · 0 评论 -
Windows完成端口编程
目录:Windows完成端口编程... 1 目录:... 1 一 基本概念... 1 二 OVERLAPPED数据结构... 1 三 完成端口的内部机制... 2 创建完成端口... 2 完成端口线程的工作原理... 3 线程间数据传递... 4 线程的安全退出... 4 一 基本概念原创 2006-07-18 17:51:00 · 1225 阅读 · 0 评论 -
Winsock 完成端口模型简介
摘自《Networking Programming for Microsoft Windows》第八章“完成端口”模型是迄今为止最为复杂的一种I/O模型。然而,假若一个应用程序同时需要管理为数众多的套接字,那么采用这种模型,往往可以达到最佳的系统性能!从本质上说,完成端口模型要求我们创建一个Win32完成端口对象,通过指定数量的线程,对重叠I/O请求进行管理,以便为已经完成的重叠I/转载 2006-07-18 17:54:00 · 1123 阅读 · 0 评论 -
Bjarne Stroustrup的FAQ:C++的风格与技巧
目录:1,我如何写这个非常简单的程序?2,为什么编译要花这么长的时间?3,为什么一个空类的大小不为0?4,我必须在类声明处赋予数据吗?5,为什么成员函数默认不是virtual的?6,为什么析构函数默认不是virtual的?7,为什么不能有虚拟构造函数?8,为什么重载在继承类中不工作?9,我能够在构造函数中调用一个虚拟函数吗?10,有没有“指定位置删除”(placement delete)?11,我转载 2007-01-05 15:51:00 · 1008 阅读 · 0 评论 -
常用数据类型使用转换详解
我们先定义一些常见类型变量借以说明int i = 100;long l = 2001;float f=300.2;double d=12345.119;char username[]="程佩君";char temp[200];char *buf;CString str;_variant_t v1;_bstr_t v2;一、其它数据类型转换为字符串 短整型(int)itoa(i,t原创 2007-05-14 12:36:00 · 714 阅读 · 0 评论 -
用Visual C++操作INI文件
在我们写的程序当中,总有一些配置信息需要保存下来,以便完成程序的功能,最简单的办法就是将这些信息写入INI文件中,程序初始化时再读入.具体应用如下: 一.将信息写入.INI文件中. 1.所用的WINAPI函数原型为: BOOL WritePrivateProfileString(LPCTSTR lpAppName,LPCTSTR lpKeyName,LPCTSTR lpString,LPCTS原创 2007-09-26 11:34:00 · 635 阅读 · 0 评论 -
VC小技巧20个
一、打开CD-ROMmciSendString("Set cdAudio door open wait",NULL,0,NULL);二、关闭CD_ROMmciSendString("Set cdAudio door closed wait",NULL,0,NULL);三、关闭计算机OSVERSIONINFO OsVersionInfo; //包含操作系统版本信息的数据结构OsVersionInfo原创 2007-09-26 11:41:00 · 530 阅读 · 0 评论 -
时间和日期操作
一. 几个基本概念介绍:Coordinated Universal Time(UTC):协调世界时,又称为世界标准时间,也就是大家所熟知的格林威治标准时间(Greenwich Mean Time,GMT)。比如,中国内地的时间与UTC的时差为+8,也就是UTC+8。美国是UTC-5。Calendar Time:日历时间,是用“从一个标准时间点到此时的时间经过的秒数”来表示的时间。这个标准时间点原创 2007-11-18 21:28:00 · 676 阅读 · 0 评论 -
技术站点推荐
零、http://pinvoke.net/一、www.hellocto.com Hello,CTO - 技术分享,资源整合,技术视频、控件、书籍、交流社区 二、www.youkuaiyun.com youkuaiyun.com-中国最大的开发者网络,为开发人员和相关企业提供全面的信息服务和技术服务! 三、www.ccw.com.cn 提供丰富的,实用的应用编程。 四、www.iteer.net IT人-IT世原创 2008-08-06 14:08:00 · 2124 阅读 · 0 评论 -
CMAP原理及其在MFC中的实现
一、 Map的基本知识 映射(Map),又称为字典(Dictionary),是由关键字(Key)及其对应的元素值(Value)所组成的元素单元(Element)的表单式集合。 通常,对于Map而言,使用给定的Key,可以迅速地从单元集合中检索到相应的元素。因此,在需要对大量数据进行查找操作而查找的性能又占据重要地位的场合,Map无疑是一种较理想的容器。譬如,在MFC中,使用Map来实原创 2008-11-08 10:27:00 · 4026 阅读 · 4 评论 -
控件Radio Button的常用用法
先为对话框加上2个radio button,分别是Radio1和Radio2。问题1:如何让Radio1或者Radio2默认选上?如何知道哪个被选上了?关键是选上,“默认”只要放在OnInitDialog()即可。三种方法可以让它选上,第一种:((CButton *)GetDlgItem(IDC_RADIO1))->SetCheck(TRUE);//选上((CButton *)GetDlgIt原创 2008-11-30 02:40:00 · 995 阅读 · 0 评论 -
gmp4.3.2 安装时 ./configure报错: error: could not find a working compiler
今天在虚拟机上想安装gcc4.9.3但貌似有三个依赖,那就顺序装吧。装到gmp的时候。怎么都configure不过去,各种查各种不行,但是我之前在别的机器装成功过。刚开始一直以为是某个编译程序没有装,后来仔细对比了通过的和不通过的。发现问题所在了。如下:这个是错误的:checking build system type... pentiumm-unknown-linux原创 2016-06-14 17:57:43 · 14550 阅读 · 3 评论