自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(35)
  • 收藏
  • 关注

原创 SQL语句中如果有条件是某个域为null的情况

select ... from where is NULL;  here is cannot be “=” in case of the value is NULL

2008-05-19 18:03:00 468

原创 关于C++静态成员的一点补充

static 是修饰对象的,会将这个对象放到静态数据区! 而不是用来修饰类型的!

2008-04-11 11:28:00 340

原创 传入的是值,但是却要修改实参的办法

例如 void foo(int *t) {}; 要在foo中修改*t的值(不是t的值),办法如下:&t为参数地址 (int*)&t - 1为返回的eip的地址 (int*)&t - 2为存储主调函数ebp的地址 (*((int*)&t - 2)为主调函数ebp的值 (*((int*)&t - 2) - 4)为主调函数中t的地址 *(int*)(*((int*)&t - 2) - 4) = 0;

2008-04-10 14:02:00 376

原创 C++ 类中的静态成员

类中的静态成员需要在使用其的cpp文件前面进行声明:例: 在a.h中, class ex{...; static int bb;.....}在a.cpp中,需要在前面加上int ex::bb = 静态成员相当于全局成员

2008-04-06 08:01:00 356

原创 关于realloc的注意事项

强烈注意realloc的size应该是你想扩充到的num数*sizeof(type), 像下面这样就越界了 :if( 0 == ( a = (int *)realloc(static_cast(a), 20) ) ){     // 20 should be 20 * sizeof(int)    cerr     return -1;  }  cout   for(int k = 0

2008-03-11 17:44:00 484

原创 关于字符与整数之间的转换

1. 一般的将一个整数转换为字符串,是用snprintf2. 将1位字符转换成1位整数, 例如char c  = A, int a = c - 0; 3.将1位整数转换为字符(char), 例如int a = 7, char c = a + 0;注:这里所说的1位,其实也就是最小是0,最高到F 4,注意一下atoi这个函数:int main(void){  ch

2008-03-10 16:25:00 696

原创 getchar()和EOF总结

getchar()和EOF总结

2008-02-21 18:04:00 3199 2

原创 指针的便宜+free所针对的指针类型

类型指针 + N:表示 类型指针 + N * sizeof(type)不能free 不是独立的由malloc calloc realloc 返回的指针当出现int *a = (int*)calloc(10, sizeof(10))时,只能free(a), 不能free(&a[N]) N != 0 

2008-02-20 17:52:00 529

原创 POSIX无名信号量

如果你学习过操作系统,那么肯定熟悉PV操作了.PV操作是原子 操作.也就是操作是不可以中断的,在一定的时间内,只能够有一个进程的代码在CPU上面 执行.在系统当中,有时候为了顺利的使用和保护共享资源,大家提出了信号的概念. 假设 我们要使用一台打印机,如果在同一时刻有两个进程在向打印机输出,那么最终的结果会 是什么呢.为了处理这种情况,POSIX标准提出了有名信号量和无名信号量的概

2008-02-14 17:52:00 2626 1

原创 线程安全的打印函数fwrite

fwrite 可以实现线程安全例如:fwrite("01234/n",   1,   5,   stdout);这样就可以线程安全的将你想要的结果输出的标准输出

2008-01-31 18:09:00 833

原创 求两个数的最大公约数和最小公倍数的代码

int main(void) {   int aa,bb,a,b,c,t;   printf("please input number/n");  scanf("%d %d", &a, &b);  aa = a;  bb = b;  if(a     t = a;    a = b;    b = t;  }  c = a % b;  while(0 != c){    a = b; 

2008-01-29 17:54:00 596

原创 C++中的各种继承方式和访问控制

C++; 继承方式; 访问控制; public,protected,private

2008-01-29 17:53:00 335

原创 多线程函数的一点笔记

1.pthread_cancelpthread_cancel取消线程,只是一个request,不一定真的起作用注意到使用了pthread_cancel之后,仍然要使用 pthread_join函数等待子线程结束;如果子线程被成功取消,那么pthread_join函数取到的状态将为 PTHREAD_CANCELED。如果pthread_cancle的时候,线程已经不存在,则该方法将会返回ESRCH错

2008-01-28 18:05:00 1256

原创 在exec系列函数中执行两个以上的系统命令

execl("/bin/sh",   "sh",   "-c",   cmdstring,   (char*)0); cmdstring   为SHELL行命令,可以带管道。 

2008-01-25 08:16:00 335

原创 C语言的文件读写 fread strncpy

read中间关联文件的是文件描述符一般用fread来读取文件中的数据fread(buf, 1, readNum, file*)strncpy 拷贝后面不加结束符,小心 

2008-01-24 21:47:00 604

原创 C语言的文件读写 fread strncpy

read中间关联文件的是文件描述符一般用fread来读取文件中的数据fread(buf, 1, readNum, file*)strncpy 拷贝后面不加结束符,小心 

2008-01-24 21:47:00 389

原创 C++ 中的ostram_iterator指定输出间隔

ostram_iterator 在定义的时候,可以指定各个元素之间输出时间隔的东西例: ostream_iterator out(cout, " "); 定义is作为cin的迭代器,并且在输出到cout时,各个输出成员用“ ”间隔 

2008-01-23 17:53:00 428

原创 C++ sort 的谓词问题

C++中 sort本身就是含有谓词版本,只是如果不填的话,最后一个是系统默认的按字母排序其中谓词函数最好是返回值是bool,然后里面是const 引用这种方法 

2008-01-23 17:51:00 958

原创 oracle 中的伪列和伪表

oracle系统为了实现完整的关系数据库功能,系统专门提供了一组成为伪列(Pseudocolumn)的数据库列,这些列不是在建立对象时由我们完成的,而是在我们建立时由Oracle完成的。Oracle目前有以下伪列:伪列:  CURRVAL AND NEXTVAL 使用序列号的保留字  LEVEL 查询数据所对应的级  ROWID 记录的唯一标识  ROWNUM 限制查询结果集的数量伪表DUAL该表

2008-01-23 17:50:00 375

原创 vmware tool的安装注意事项

安装vmware-tool,一定要记得装LINUX的时候,安装开发包,就是光盘中以kernel开头,并且中间有devel字样的文件,且必须和uname -a显示的内核匹配 

2008-01-20 20:31:00 827

原创 将top 等动态刷新的信息写入文件的方法

top   -d   0.5   -b|grep   hello|tee   -a  >top.txt将动态产生的系统信息放入文件中其中 d 指定每两次屏幕信息刷新之间的时间间隔。b 是指 batch mode,在这个mode下,top 不接受任何输入,这对将top的输出输入程序或者文件很有用tee指令会从标准输入设备读取数据,将其内容输出到标准输出设备,同时保存成文件-a或--appen

2008-01-18 10:14:00 1869

原创 C++ 纯虚函数和虚函数的一点笔记

 纯虚函数能被子类继承,且子类如果依旧不定义的话,则子类也是抽象类虚函数被声明了,必须被定义,不用被定义的只有纯虚函数

2008-01-17 08:27:00 281

原创 UNIX下硬链接和软链接的区别

硬链接原文件&链接文件公用一个inode号,说明他们是同一个文件,实际上就是原文件的一个指针管硬链接节省空间,也是Linux系统整合文件系统的传统方式,但是存在一下不足之处:(1)不可以在不同文件系统的文件间建立链接(2)只有超级用户才可以为目录创建硬链接。而软链接原文件&链接文件拥有不同的inode号,表明他们是两个不同的文件;在文件属性上软链接明确写出了是链接文件,而硬链接没有写出来,因为

2008-01-11 18:07:00 1328

原创 popen 函数

FILE *popen(const char *command, const char *type);The type argument is a pointer to a null-terminated string which must be `r for reading, `w for writing, or `r+ for reading and writing.The re

2008-01-11 18:05:00 439

原创 C++ lower_bound 算法

比如vector _rows中已经有了{0,1,3,5}这是要放入4,则std::lower_bound( _rows.begin(), _rows.end(), 4);将会返回5,就是应该插入的那个位置后面的那个值然后_rows.insert( iter, 4);这句将按照从小到大的顺序将4放进去,最后的顺序是{0,1,3,4,5} 

2008-01-08 18:09:00 1939

原创 C++中 public,protected, private 访问标号小结

第一:private, public, protected 访问标号的访问范围。private:只能由1.该类中的函数、2.其友元函数访问。不能被任何其他访问,该类的对象也不能访问。protected:可以被1.该类中的函数、2.子类的函数、以及3.其友元函数访问。但不能被该类的对象访问。public:可以被1.该类中的函数、2.子类的函数、3.其友元函数访问,也可以由4.该类的对象访问。

2008-01-08 17:39:00 625

原创 C++ 类型重载 特例 一项

operator int()    const {return _value;}如果在一个类中定义了这个方法则这个类的实例可以直接出现在任何int出现的地方,执行int的操作 

2008-01-08 17:37:00 283

原创 C++中 type_id 的作用

typeid 能动态的寻找当前的对象,实现多态,例如:...#includeclass base{public:  void iam()  {    cout   }  virtual void polo()  {    cout   }};class base1 :public base{  /*  public:  virtual void iam()  {    cout   }

2008-01-08 17:35:00 770 1

原创 C++ 访问 类中保护方法成员 途径

一个类中的保护方法,可以用友元的一个方法来调用,例如:class a{  friend class k;protected:  bool err;  void pro()  {    cout   }};class k{public:   void priPro(a *a_ins)  {    a_ins->pro();  }};int main(...){...k_ins.pri

2008-01-08 17:34:00 1019

原创 windows下使用emacs时找不到.emacs文件的解决办法

这个文件通常位于你的 $HOME 目录,如果是 MS Windows (Windows 2000, Windows XP以上),默认是 c:/Documents and Settings/username/Application Data/,这个适用于 Emacs22 以上的版本。Emacs21 默认的 $HOME 目录在 C:/ 。当然也可以通过环境变量 $HOME 重新设置,总之在比较大众化的

2008-01-06 19:03:00 1522

原创 C++的vector中的resize, reserve, size, capacity,empty

 

2007-12-29 18:41:00 598

原创 C++的vector中的resize,reserve,size(),capacity()

resize()是重新调整容器大小,这个大小可以为零,在新的大小比原来要大时保留原来的数据, 而reserve(),顾名思义,保留部分空间, 也有resize()的味道。具体说说, resize(1000)是分配1000个元素的空间,并在每个空间填充一个空的元素(不好表达),而reserve(1000),分配1000个元素的空间, 只填充最小数量的空间,顺便提一下size()和capaci

2007-12-29 18:40:00 5044 4

原创 Singleton模式和关于模板类的方法定位

Singleton模式在GOF中描述如下:        Ensure a class only has one instance, and provide a global point of access to it.作为一个模板的特例化的类,所使用的方法不只是该类自己的方法,还有模板的方法,类似于父类的方法不一定会在子类中定义,但是子类依然可以使用. 

2007-12-25 17:57:00 448

原创 C++ 模板实例化

1.用类/typename作为参数来定义类模板,实例化应该是:template class obj;....obj obj1(T);2.用类/typename作为参数来定义方法模板,实例化应该是:template void func() {};...func (); 

2007-12-24 17:57:00 420

原创 fprintf, fopen, fread

fprintf(FILE *restrict stream, const char *restrict format, ...)例:fprintf(file pointer, "%u", i);i直接是一个整数变量, 并非内存地址 fopen最后一个参数是打开模式,要用""包住fread如果出错,返回是0,而且读取最后没有/0结束, 每次读取之后,要加上结束符  

2007-12-13 18:12:00 473

空空如也

空空如也

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

TA关注的人

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