![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C,C++
iteye_13984
这个作者很懒,什么都没留下…
展开
-
关于回车,换行,EOF
[b][size=large]回车换行[/size][/b]:http://www.cnblogs.com/faraway/archive/2009/03/05/1403649.html这位大哥解释的很清楚。我整理下:三种系统的行结尾:Windows: “\r\n” 0x0d0x0a; //顺序不能错。Mac : “\r” 0...原创 2011-09-26 17:41:02 · 2464 阅读 · 0 评论 -
空指针的判断
请看NULL的定义: #if !defined(__cplusplus) #define NULL ((void*)0) #else #define NULL 0 #endif if ( p != NULL )if ( p != 0 )if ( p )c++教主推荐用0http://bbs.51cto.com/threa...原创 2011-10-11 17:43:07 · 635 阅读 · 0 评论 -
const的理解和应用
const的理解和应用一.理解const是一种语义上的约束,可以通知编译器和其他程序员某个值要保持不变。尽量使用const可以帮助在编译的时候发现错误,使程序更容易懂。二.用法 const修饰的变量必须在定义的同时初始化(理解为只读的变量,定义时候不初始化,其他地方肯定不可以修改)a.对于指针const char *p = "hello"; // 非const指针,...原创 2011-10-14 16:52:43 · 119 阅读 · 0 评论 -
typedef和指针结合
1. typedef (int *) pInt;2.typedef pInt (int *);对于pInt a,b;第一种:int *a;int *b;第二种: int*a,b; //b为int 型。声明函数指针类型:typedef int (*PF) (const char*,const char*);语法:1。typedef(*)(参数表)2.。...原创 2011-10-14 17:42:24 · 143 阅读 · 0 评论 -
函数指针实现回掉函数
用法:头文件中声明:DECL_LINK( PaintingFirstLineHdl, PaintFirstLineInfo* );宏:#define DECL_LINK( Method, ArgType ) \long Method( ArgType ); \static long LinkStub##Method( void* pThis, void* )展开:...原创 2011-10-14 17:47:30 · 139 阅读 · 0 评论 -
对话框工厂
1.对于工厂我的理解:良好的封装性。使用和创建,初始化分开。创建和初始化的工作交给工厂类,这样,不必在使用的地方完成大量复杂的初始化工作。http://hi.baidu.com/wuweihi/blog/item/456a723f7bdd01c77c1e7156.htmlhttp://blog.csai.cn/user1/25929/archives/2009/35622.html...原创 2011-10-14 18:00:52 · 131 阅读 · 0 评论 -
C语言标准
1.K&R C1978年,丹尼斯·里奇(Dennis Ritchie)和布莱恩·柯林汉(Brian Kernighan)合作出版了《C程序设计语言》的第一版。书中介绍的C语言标准也被C语言程序员称作“K&R C”。第二版的书中也包含了一些ANSI C的标准。2.ANSI C1989年,C语言被 ANSI 标准化(ANSI X3.159-1989)。标准化的一个目的是扩展K&R C。...原创 2011-10-21 12:11:24 · 144 阅读 · 0 评论 -
关于构造函数,析构函数,explicit等内容
[size=large][b]一.编译器会为我们做什么[/b][/size] 当声明一个空类的时候,编译器会[b][color=red]根据需要[/color][/b]生成:默认构造函数,拷贝(copy)构造函数,赋值操作符重载函数(copy assignment),析构函数.上面四个函数,当你声明一个类的时候,你没有定义的时候,编译器会根据需要帮你生成,[b]他们都是 public 的并...原创 2011-11-01 17:04:08 · 173 阅读 · 0 评论 -
pImp
http://www.cnblogs.com/JulyZhang/archive/2011/11/05/2237213.html原创 2011-11-08 17:24:23 · 134 阅读 · 0 评论 -
浮点数的比较
[size=large][b]一浮点数的知识[/b][/size]1.首先浮点数不用补码表示,只有int型才用补码表示。2.计算机能精确表示的数值是有限的,离散的,而现实中的实数是连续的,这就必然有精度的要求。二进制的小数更糟糕,能精确表示的更少。例如:0.1D,表示成二进制的时候是循环的0.0 0011 0011 0011......B根据IEEE标准754:32位的...原创 2011-10-11 10:48:59 · 213 阅读 · 0 评论 -
关于字符串倒转
有纯倒转,也有按单词为单位的。想做个总结[code="c"]#includevoid ReverseChar( char * const start, char * const end){ if( start == NULL || end== NULL || start == end ) return ; char * _st...原创 2011-10-10 20:25:48 · 98 阅读 · 0 评论 -
关于文件操作的头文件,类
[b][size=large]C++[/size][/b]可以看这个http://www.cplusplus.com/doc/tutorial/files/我整理下:ofstream //写文件的流类ifstream //读文件的流类fstream //读/写文件的流类这三个类都直接或者间接的继承于istream和ostream.我们平时用的ci...原创 2011-09-27 14:11:23 · 241 阅读 · 0 评论 -
c++基本文件操作
[code="c++"]#include#include#include#includeusing namespace std;int main(){ifstream in_file;ofstream out_file ;string out_string;out_file.open("/home/merlin/code/word.txt")...原创 2011-09-30 00:28:40 · 151 阅读 · 0 评论 -
Linux判断大小尾数(big-endian,little-endian)的方法
static union{ char c[4]; unsigned char l;} endian_test={ {'l','?','?','b'} }#define ENDIANNESS ( (char)endian_test.l )if (ENDIANNESS == 'l')//little endian else //big endian ...原创 2011-10-07 22:12:40 · 605 阅读 · 0 评论 -
约瑟夫环的解答
http://blog.csdn.net/kittyjie/article/details/4731222原创 2011-10-07 22:48:41 · 77 阅读 · 0 评论 -
Quick Sort(快速排序)
Quick Sort算法描述如下:假设S代表将被处理的序列1.如果[b]S[/b]的元素个数为0或1,结束。2.取[b]S[/b]中的任何一个元素,当作枢轴(pivot)[b]v[/b].3.将[b]S[/b]分割成[b]L[/b],[b]R[/b]两段,使L内的每个元素都小于或等于[b]v[/b],R内的每一个元素都大于或等于[b]v[/b].4.对[b]L[/b],[b...原创 2011-10-08 11:20:25 · 109 阅读 · 0 评论 -
C++模板
template是关键字,template之后是 模板形参表。模板形参表是用尖括号括住的一个或者多个模板形参的列表。1.模板函数template //没有分号[inline] int compare(const T &V1 ,const T &V2) //和上面的是一个语句{//do something} ...原创 2011-10-08 15:52:40 · 58 阅读 · 0 评论 -
不用中间变量交换数据
那种加加减减的方法其实不对。因为缩小了数据范围。a1=a1+a2; //此时a1为a1与a2之和 a2=a1-a2; //此时a2=a1 a1=a1-a2; //此时a1=a2位操作符号^(异或)有个性质:a^a=0;0^a=a;所以a^a^b=b;所以正确的交换如下:void swap (int& _1,int& _...原创 2011-10-10 14:42:22 · 104 阅读 · 0 评论 -
C数组和指针的区别
看《C专家编程》总结的的。首先是个经典的例子:一个文件定义:char a[4];另一个文件声明:extern char* a;或者extern char a[];这两种声明会有什么后果?编译器是怎样的处理?下面说明。[size=large][b]一.声明和定义的概念[/b][/size]一个变量和函数,定义只能有一次,但是声明却可以多次。定义:确定对...原创 2011-10-10 19:25:07 · 70 阅读 · 0 评论 -
指针 多维数组
这篇文章写的很好http://www.cnblogs.com/wangkangluo1/archive/2012/04/12/2444946.html原创 2012-06-05 16:12:32 · 96 阅读 · 0 评论