随笔 - 68  文章 - 2 评论 - 428 阅读 - 16万
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

随笔分类 -  C++&&C

1 2 下一页
转参考文档
(转)VC中#pragma warning指令
摘要:该指令允许有选择性的修改编译器的警告消息的行为指令格式如下:#pragma warning( warning-specifier : warning-number-list [; warning-specifier : warning-number-list...]#pragma warning( push[ ,n ] )#pragma warning( pop )主要用到的警告表示有如下几个:o... 阅读全文
posted @ 2009-02-25 23:00 Evilbaniry 阅读(1261) 评论(0) 推荐(0) 编辑
#define总结 (网上资料汇集)
摘要:1. 定义简单的常数:定义常量,便于修改(切不可在后面加上分号!) #define N 1000 等效于 const int N = 1000; 但略有不同,define只是简单替换,而不是作为一个量来使用.2. 定义简单的函数:注意多使用括号define可以像函数那样接受一些参数,如下:#define max(x,y) (x)(y)?(x):(y);这个定义就将返回两个数中... 阅读全文
posted @ 2009-02-25 18:09 Evilbaniry 阅读(12866) 评论(0) 推荐(0) 编辑
VC里一些容易混淆的地方(转)
摘要:1.FALSE/TRUE与false/true的区别:  false/true是标准C++语言里新增的关键字,而FALSE/TRUE是通过#define,这要用途是解决程序在C与C++中环境的差异,以下是FALSE/TRUE在windef.h的定义:#ifndef FALSE#define FALSE 0#endif#ifndef TRUE#define TRUE 1#endif也就是说... 阅读全文
posted @ 2009-02-23 22:41 Evilbaniry 阅读(659) 评论(0) 推荐(0) 编辑
(转)消息分流器
摘要:对于熟悉Win API编程的同志们来说,windowsx.h这个头文件应该不会太陌生吧,这次要讲的内容就来自这个windowsx.h头文件。   经常能在msdn上查到这样一些函数,明明是个函数,而且模样长得和一般的api函数也一样一样的,可却叫做macro,为什么呢?留意一下函数使用的requirement,你会发现,它的声明正是在windowsx.h这个头文件里。Windowsx.h包含了这样... 阅读全文
posted @ 2009-01-07 17:57 Evilbaniry 阅读(535) 评论(0) 推荐(0) 编辑
(转)std::map的用法总结
摘要:给出了map的基本用法如插入、查找、删除、遍历等等,同时告诉你如何实现双键map,包括 (1) 只有两个键都匹配才命中目标 (2) 两个键中任意一个匹配就命中目标 可以扩展到多键 (一) 介绍 特点: 1.map将Key的object和T的Object绑定到一起,因此是一种Pair Associative Container, 表示其value type为 pair。 2.它同时也是Uniq... 阅读全文
posted @ 2009-01-04 16:40 Evilbaniry 阅读(25846) 评论(1) 推荐(1) 编辑
GetModuleFileName()得到程序路径
摘要:利用GetModuleFileName得到当前程序运行路径; 原型: Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ -->1WINBASEAPI 2DWORD 3WINAPI 4GetModuleFileNameW( 5__i... 阅读全文
posted @ 2008-12-30 13:36 Evilbaniry 阅读(880) 评论(0) 推荐(0) 编辑
利用GetDriveType来得到驱动器信息
摘要:Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ -->1UINTuiResult=GetDriveType(TEXT("c:\\")); 2switch(uiResult) 3{ 4... 阅读全文
posted @ 2008-12-30 11:41 Evilbaniry 阅读(269) 评论(0) 推荐(0) 编辑
makeintresource:VC MAKEINTRESOURCE 析疑
摘要:常常 看到对MAKEINTRESOURCE的疑问,认为怎么能把一个整数转化一个指向字符串的指针?下面是这个宏的定义。 #define MAKEINTRESOURCEA(i) ((LPSTR)((ULONG_PTR)((WORD)(i)))) #define MAKEINTRESOURCEW(i) ((LPWSTR)((ULONG_PTR)((WORD)(i)))) 为什么能把一个一个I... 阅读全文
posted @ 2008-12-25 21:38 Evilbaniry 阅读(419) 评论(0) 推荐(0) 编辑
(转)c/c++的预处理定义 Stringizing Operator (#) Charizing Operator (#@) Token-Pasting Operator (##)
摘要:c/c++的预处理定义: 一、Stringizing Operator (#) 在c和c++中数字标志符#被赋予了新的意义,即字符串化操作符。其作用是:将宏定义中的传入参数名转换成用一对双引号括起来 参数名字符串。其只能用于有传入参数的宏定义中,且必须置于宏定义体中的参数名前。 如: #define example(instr) printf("the input string is:\t%s... 阅读全文
posted @ 2008-12-25 11:02 Evilbaniry 阅读(934) 评论(0) 推荐(0) 编辑
va_start() va_end()函数应用
摘要:1:当无法列出传递函数的所有实参的类型和数目时,可用省略号指定参数表void foo(...); void foo(parm_list,...); 2:函数参数的传递原理 函数参数是以数据结构:栈的形式存取,从右至左入栈.eg: Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHi... 阅读全文
posted @ 2008-12-24 17:08 Evilbaniry 阅读(1071) 评论(0) 推荐(0) 编辑
#ifdef __cplusplus 倒底是什么意思?
摘要:时常在cpp的代码之中看到这样的代码: #ifdef __cplusplus extern "C" { #endif //一段代码 #ifdef __cplusplus } #endif 这样的代码到底是什么意思呢?首先,__cplusplus是cpp中的自定义宏,那么定义了这个宏的话表示这是一段cpp的代码,也就是说,上面的代码的含义是:如果这是一段cpp的代码,那么加入... 阅读全文
posted @ 2008-12-24 16:51 Evilbaniry 阅读(242) 评论(0) 推荐(0) 编辑
(转)typedef用法小结
摘要:这两天在看程序的时候,发现很多地方都用到typedef,在结构体定义,还有一些数组等地方都大量的用到.但是有些地方还不是很清楚,今天下午,就想好好研究一下.上网搜了一下,有不少资料.归纳一下: 来源一:Using typedef to Curb Miscreant Code Typedef 声明有助于创建平台无关类型,甚至能隐藏复杂和难以理解的语法。不管怎样,使用 typedef 能为代... 阅读全文
posted @ 2008-12-24 16:45 Evilbaniry 阅读(266) 评论(0) 推荐(0) 编辑
(转)STDAPI释义
摘要:对于一个初学者来说,对于如下函数定义,一定会有点迷惑。STDAPI DllGetClassObject(){} 也许你会问该函数定义中的STDAPI是什么东东。如果你对此迷惑,那我告诉你在WINNT.h文件中STDAPI宏定义如下: #define STDAPI EXTERN_C HRESULT STDAPICALLTYPE 在MSDN中STDAPICALLTY... 阅读全文
posted @ 2008-12-24 16:30 Evilbaniry 阅读(854) 评论(0) 推荐(0) 编辑
判断windows系统类型
摘要:Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ -->1#include 2#include 3#include 4 5intmain() 6{ 7usingnamespacestd; 8... 阅读全文
posted @ 2008-12-24 15:59 Evilbaniry 阅读(286) 评论(0) 推荐(0) 编辑
cout正常显示WCHAR
摘要:使用 cout 显示WCHAR发现,并不能正确显示,如下面: Code intmain() { usingnamespacestd; WCHARwc[3]={L'W',L'I',L'\0'}; cout<<wc; 显示结果为0012FE3。 初步分析是cout并没有实现对WCHAR的重载。google后得到信息,使用wcstombs()函可以把WCHAR转化... 阅读全文
posted @ 2008-12-24 15:42 Evilbaniry 阅读(1168) 评论(0) 推荐(0) 编辑
(转)assert() 函数用法
摘要:assert宏的原型定义在中,其作用是如果它的条件返回错误,则终止程序执行,原型定义: #include void assert( int expression ); assert的作用是现计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息, 然后通过调用 abort 来终止程序运行。 请看下面的程序清单badptr.c: Code hig... 阅读全文
posted @ 2008-12-24 14:28 Evilbaniry 阅读(295) 评论(0) 推荐(0) 编辑
(转)offsetof 解析
摘要:offsetof(s,m)解析 今天看代码时,发现一个有用的东东,offsetof(s,m),这是一个宏,定义如下: #define offsetof(s,m) (size_t)&(((s *)0)->m) 然后到网上查了一下,发现还真的是很有用,附带一位大侠的解说: Code highlighting produced by Actipro CodeHighlighter (f... 阅读全文
posted @ 2008-12-24 14:11 Evilbaniry 阅读(351) 评论(0) 推荐(0) 编辑
(转)C++的类型转换符:static_cast、dynamic_cast、reinterpret_cast、和const_cast 很全面
摘要:使用标准C++的类型转换符:static_cast、dynamic_cast、reinterpret_cast、和const_cast。 3.1 static_cast 用法:static_cast ( expression ) 该运算符把expression转换为type-id类型,但没有运行时类型检查来保证转换的安全性。它主要有如下几种用法: ①用于类层次结构中基类和子类之间指针... 阅读全文
posted @ 2008-12-24 13:59 Evilbaniry 阅读(393) 评论(0) 推荐(0) 编辑
(转)#Pragma用法
摘要:Author:Jeffrey 在制定ANSI C标准时,引入了pragma提示符,这个指示符来自Ada。#pragma用于向编译器提示一些信息,诸如把某个特定的函数扩展成内联,或者取消边界检查,它并非C所固有。 目录: (0) 前言 (1) #pragma message能够在编译信息输出窗口中输出相应的信息 (2) #pragma code_seg能够设置程序中函数代码存放的代... 阅读全文
posted @ 2008-12-24 09:41 Evilbaniry 阅读(389) 评论(0) 推荐(0) 编辑
CreateWindow函数介绍
摘要:函数功能:该函数创建一个重叠式窗口、弹出式窗口或子窗口。它指定窗口类,窗口标题,窗口风格,以及窗口的初始位置及大小(可选的)。该函数也指定该窗口 的父窗口或所属窗口(如果存在的话),及窗口的菜单。若要使用除CreateWindow函数支持的风格外的扩展风格,则使用 CreateWindowEx函数代替CreateWindow函数。 函数原型:HWND CreateWindow(LP... 阅读全文
posted @ 2008-12-17 11:25 Evilbaniry 阅读(1644) 评论(0) 推荐(0) 编辑

1 2 下一页
点击右上角即可分享
微信分享提示