`
wss71104307
  • 浏览: 219162 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论
文章列表
C++ 类的静态成员(static) 静态成员的提出是为了解决数据共享的问题。实现共享有许多方法,如:设置全局性的变量或对象是一种方法。但是,全局变量或对象是有局限性的。这一章里,我们主要讲述类的静态成员来实现数据的 ...
strcpy()、memcpy()、memmove()、memset()的实现     strcpy(), 字符串拷贝. char *strcpy(char *strDest, const char *strSrc) {     assert((strDest!=NULL) && (strSrc !=NULL));     char *address = strDest;         while( (*strDest++ = * strSrc++) != '\0')        NULL ;     return address ;     ...
                编程之道     ———————————————————————— 一 太虚幻境 二 古贤 三 设计 四 编码 五 维护 六 管理 七 集体智慧 八 硬件软件 九 尾声 ————————————————————————         *  太虚幻境 ----------------------------------- 真正的程序员如是说: “当你已学会从纷繁中去定位错误的代码,就是你动身的时候了。”         1.1     一种神奇的东西形成,诞生在虚无之中。独自不动地等待,它立刻静止,而又在永恒地运动。它是所有程 ...
对于给定的整数,求出删除该整数中的一个数字后得到的最小值. 比如,1214 ,去掉2,得到的结果是114为最小值.     算法: 删除数字中的极大值( 左边的数字递增,右边紧邻的数字是减少的或者本身为最后一位。例如:1214 中的2 ;  122543中的5; 1334中的4)   证明:假设极大值为第i位,记为X[i].分2种情况, 1 。如果删除 i 左边的某位记第j位,即删除X[j]          删除前         ----jj+1---i---- 删除 X[j] 后  ----j+1---i---   删除 X[i] 后  ----j --------- ...
  KMP 算法学习总结   KMP 算法看似简单,其实想要完全理解还是有困难的。   KMP 其实可以搜索过程可以看成是一个自动机,分为 2 部分,第一部分自动机的构造 ( 对应一般的说法就是失效函数,转移函数, overlap 函数 ) ,第二部分在自动机上搜索过程。 举个例子: 目标串味 T = acabaabaabcacaabc; 模式串 P=abaabcac ;   第一步:根据模式串构造自动机 向前的箭头表示搜索前进的方向。向后的箭头表示不匹配的回溯,即失效函数,或者状态变迁函数。例如: ...
引用与指针的区别: 1. 引用必须被初始化。指针可以不初始化。     int a;      int  & b = a;     int * pi;     引用初始化有种特殊情况。const引用。 const int & a = 0;  const int & b =2.2; 2. 用一个指针给另外一个指针赋值,改变的指针;用一个引用给另外个引用赋值,改变的是被引用的值。     int a= 0, b= 1;     int  * p1 = &a;     int *  p2 = &b;     p1 = p2;   ...
#include <iostream> using namespace std; /** * paramter pat:待匹配的字符串 * T: 返回的table * **/ void kmp_table(const char * W, int T[]) { int pos = 2; //当前查找的位置 int cnd = 0; //当前查找的前缀字串的位置 T[0] = -1; T[1] = 0; while(pos < strlen(W)) { if( W[cnd] == W[pos-1] ) { ...
试题1:请写一个C函数,若处理器是Big_endian的,则返回0;若是Little_endian的,则 返回1 Answer: int checkCPU() {  {   union w   {    int a;    char b;   } c;   c.a = 1;   return (c.b == 1);  } } 定义一个union数据结构,里面a和b是使用同一个地址的,int是2Bytes,而b则是1 Byte的,也就是a的低8位(总共16位)。令a=1, 则在big endian机器上,a用16进制 表示为0x01,0x00(低地址 ...
strlen与sizeof的区别 1.sizeof操作符的结果类型是size_t,它在头文件中typedef为unsigned int类型。 该类型保证能容纳实现所建立的最大对象的字节大小。 2.sizeof是算符,strlen是函数。 3.sizeof可以用类型做参数,strlen只能用char*做 ...
MySQL:         String Driver="com.mysql.jdbc.Driver";    //驱动程序     String URL="jdbc:mysql://localhost:3306/db_name"? useUnicode=true&characterEncoding=UTF-8;    //连接的URL,db_name为数据库 名,注意修改编码类型      ...
http://unibetter.com/deerchao/zhengzhe-biaodashi-jiaocheng-se.htm
<script type ="text/javascript" >//<![CDATA[ var flag = false; function Notify() { flag = true; } function thisMovie(movieName) { if (navigator.appName.indexOf("Microsoft") != -1) return window[movieName]; return document[movieName]; } function pinYin( ...
http://blog.sina.com.cn/s/blog_5f5fff010100cv90.html   总结: 1. 就内存空间的分配而言,函数是类拥有的;而成员变量和虚函数是对象所拥有的。 2.继承使得祖先的成员变量(不管是不是私有的)在子类的对象中。 3.对象存在且仅存在一个指向虚函数表的指针。(即使有多个虚函数)

memcpy memmove 区别

 
memcpy 和memmove 都是把一个内存块拷贝到另一个内存块,其区别为:   memcpy 不考虑源内存块和 目标内存块 是否重叠的情况,即        source  |                                |                            dest |                               |   而memmove则考虑了这一情况,当遇到这种情况的时候,拷贝是从最高位开始,这样就保证source中还没拷贝的块不会因为dest的原因被修改。   #include <stdio.h> # ...
http://www.cnblogs.com/sonkoto/archive/2008/07/20/1247089.html
Global site tag (gtag.js) - Google Analytics