zoukankan      html  css  js  c++  java
  • 门禁项目小结(一)我的部分

    背景:

          前段时间被要求做了一个门禁系统,自从发现博客园这样一个地方以来,小结成为了我生活必须的一部分,做完一个项目、面完一场试等等。项目应该来说已经半完结了,那么来复习一下在项目中学到的内容、用到的内容以及一些个方法技巧。

    1、在写文件搜索路径的时候,有写两个\\,其中一个是转义字符,另一个才是根目录。这部分代码呢在我的firstsearch下,下面贴出它的核心代码:

    核心代码中判断右边是否是\,我觉得比较有意思,然后不管三七二十一都要加上“*.*”不然会后面会出现错误。然后用cfindfile类型的变量运行findfile

    View Code
    1 CFileFind ff;
    2 CString dirFile = dirName;
    3 if(dirFile.Right(1) != "\\")
    4 dirFile += "\\";
    5 dirFile += "*.*";
    6
    7 bool result = ff.FindFile(dirFile);
    8 if (result)
    9 {
    10 if (QueueIn(&dirQueue, dirName) == 0)
    11 {
    12 printf("Error: Queue In Error!\n");
    13 return 0;
    14 }
    15 }
    16 else
    17 {
    18 printf("Error: Wrong Dir!\n");
    19 return 0;
    20 }
    21
    22 while(!QueueIsEmpty(&dirQueue))
    23 {
    24 QueueOut(&dirQueue, outDir);
    25 memset(tmpDir, 0, sizeof(tmpDir));
    26 strcat(tmpDir, outDir);
    27
    28 printf(outDir);
    29 printf("\n");
    30 CString tmpFile = outDir;
    31 if(tmpFile.Right(1) != "\\")
    32 tmpFile += "\\";
    33 tmpFile += "*.*";
    34 result = ff.FindFile(tmpFile);
    35 while(result)
    36 {
    37 result = ff.FindNextFile();
    38 CString dirPath = ff.GetFilePath();
    39 if (!ff.IsDots())
    40 {
    41 memset(tmpDir, 0, sizeof(tmpDir));
    42 for(int i=0;i <dirPath.GetLength();i++)
    43 {
    44 tmpDir[i]=dirPath[i];
    45 }
    46 QueueIn(&dirQueue, tmpDir);
    47 }
    48 }
    49 }
    50 ff.Close();

    得到地址的办法就是getfilepath(),判断是不是文件夹里面有的.或者..则用ff.IsDots判断。
    2、CString中可以直接通过+来把字符连贯到一起。CString有一个.Format方法,这种方法可以把一些不是CString的数据类型转换成CString.
    eg:这样可以直接在后面加
    CString str = "Some Data";
    str.Format("%s%d", str, 123); 
    然后:
    string 这个要特别注意一下。
    3、文件的读写fread,fwrite,fscanf,fprintf
    首先是定义一个FILE *fp指针,然后fopen一个文件,在其中有两个参数,一个指明文件名,一个指明打开的方式,是只读,只写,还是可读,可写,写的话是不是追加,文件的形式是不是二进制。fopen的返回值看是不是null,是的话说明读取失败,不是则读取成功,可以进行后面操作。其后读文件用fread,写文件用fwrite,fread和fwrite都有四个参数buffer,size,count,stream,最后一个参数是文件,buffer是要读入或者写出变量,size是每个写的元素的大小,是几个字节,count写几个这样的元素,每个这样的元素大小都是size.最后的最后都要fclose(fp)。

    这里要注意,就是QQ问到过的一个面试题,说怎么读取一个文件。那么就是说要先定义一个FILE*fp类型,然后fopen,然后fread,最后fclose。
    4、指针注意申明了以后要赋初值,初始化,如->new Feature;不然是不知道指向哪里的。
    还要记得delete和free。
    new 用delete,malloc用free.

  • 相关阅读:
    移动端WEB开发真机测试
    前端自学路线之js篇
    学习提高你CSS技术的法则
    day-5元组专区
    day5-列表专区
    day4-字符串专区
    day2-day3基本数据类型专区
    day1-习题
    day1-python条件语句和基本数据类型
    day1-python初识以及变量
  • 原文地址:https://www.cnblogs.com/liuliunumberone/p/2058253.html
Copyright © 2011-2022 走看看