入侵oracle数据库的一些技巧(12)


      if ( (h = (NameInfo *) malloc(sizeof(NameInfo))) == NULL )
      {
          fprintf(stdout, "malloc failed %d", GetLastError());
          exit(0);
      } /* create the head node */

      /* init the head node*/
      h->Next = NULL; //删除下一个结点
      p = h; //p里面目前指向头结点

      for ( i=0; i < NodeNum; i ++)
      {//按sizeof(TCHAR)的长度分配100块连续的区域,并把指向TCHAR类型指针的首地址赋予指针变量szTempPass:
          szTempName = (TCHAR *)calloc(100, sizeof(TCHAR));
          ZeroMemory(szTempName, 100);//字符串类型变量清0

          if ( (s = (NameInfo *)malloc(sizeof(NameInfo))) == NULL)
          {
              fprintf(stdout, "malloc failed %d", GetLastError());
              exit(0);
          }

            memset(s->Name, '\0', 100);
            fgets(szTempName, 100, DictFile);
            strncpy(s->Name, szTempName, strlen(szTempName)-1);
            s->Next =NULL;
            p->Next = s;//p指向下一个结点的地址
            p = s;//下一个结构的数据域赋值

          free(szTempName);

      }

      return h;




int LineCount(FILE * fd) //返回字典中的密码数量
{
    int countline = 0;
    char data[100] = {0};//字符数组清0

    while (fgets(data, 100, fd))//从指定的文件中读一个字符串到字符数组中

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/1490.html