String Processing Function Implementation

string function in c

strcpy

  • 使用一个临时变量保存串的首地址,然后最后返回这个地址
  • 然后在最后判断是否遇到’\0’来结束复制
1
2
3
4
5
6
7
8
9
10
11
12
13
char *strcpy1(char *des, const char*src){
  char *address = des;
  while((*des++ = *src++) != '\0');
  return address;
}
int main(){
  char *des;
  char *src = "aaa";
  char *result;
  result = strcpy1(des, src);
  cout<<result;
  return 0;
}
Read more
c++
Comments

C++ Basic Data Structure

basic data structure and algorithm

little review about c++ object oriented

  • 虚函数
    • 核心理念就是基类访问派生类定义的函数
    • 动态联编
    • 一个函数的调用不是在编译的时候确定的,而是在运行的时候确定的,并且因为写代码的时候不能确定被调用的函数是基类的函数还是派生类的函数,所以这个函数又叫做“虚函数“
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class A{
    public:
        virtual void test(){
            cout<<"A:test() is called";
        }        
};
class B: public A{
    public:
        virtual void test(){
            cout<<"B:test() is called";
        }
};
int main(){
    A *a = new B();
    a -> test();
}
Read more
Comments

C++ Program Run Time

时间复杂度

  • costs for growth rate representative of most computer algorithm
    • n loglogn logn n nlogn n2 n3 2n
      16 2 4 24 2*24=25 28 212 216
      256 3 8 28 8*28=211 216 224 2256
      1024 3.3 10 210 10*210=213 220 230 21024
      64K 4 16 216 16*216=220 232 248 264K
      1M 4.3 20 220 20*220=224 240 260 21M
      1G 4.9 30 230 30*230=235 260 290 21G
Read more
c++
Comments

Xapian Omindex Build Index and Search

omega is a component that can be used with xapian

  • we can use omega to build index

build index

  • omindex --db index --url / ./index_file/
    • —db 后面跟的是索引数据库的名字
    • —url 后面跟的是 / 然后再加上要建索引的数据的文件夹(含有那些要建索引的文件)
  • 运行之后,就会生成index文件夹,这个文件夹里面就是建好的索引

query

  • quest —db=index “asd”
    • —db 后面跟的是索引数据库
    • 然后再加上要查询的关键字
Comments

Virtual Machine Windows VS2010 UNC Path Not Support

解决UNC路径不受支持

在虚拟机的VS2010中编译出错
  • 错误提示:用作为当前目录的以上路径启动了 CMD.EXE。 UNC 路径不受支持。默认值设为 Windows 目录。系统找不到指定的文件。执行 c:\windows\system32\cmd.exe 时出错.
  • 解决方法:
    • 在注册表中,添加一个值即可.路径如下:
      • HKEY_CURRENT_USER\Software\Microsoft\Command Processor
      • 添加值 DisableUNCCheck,类型为 REG_DWORD 并将该值设置为1 (十六进制)。
    • 或者,打开cmd.exe
      • 把下面这行代码复制进去,按回车
      • reg add “HKEY_CURRENT_USER\Software\Microsoft\Command Processor” /v DisableUNCCheck /t REG_DWORD /d 1 /f
Comments

ASP.net in Mac MonoDevelop

install asp.net environment in mac

Read more
Comments