<menu id="w8yyk"><menu id="w8yyk"></menu></menu>
  • <dd id="w8yyk"><nav id="w8yyk"></nav></dd>
    <menu id="w8yyk"></menu>
    <menu id="w8yyk"><code id="w8yyk"></code></menu>
    <menu id="w8yyk"></menu>
    <xmp id="w8yyk">
    <xmp id="w8yyk"><nav id="w8yyk"></nav>
  • 網站首頁 > 物聯資訊 > 技術分享

    scandir函數詳解

    2016-09-28 00:00:00 廣州睿豐德信息科技有限公司 閱讀
    睿豐德科技 專注RFID識別技術和條碼識別技術與管理軟件的集成項目。質量追溯系統、MES系統、金蝶與條碼系統對接、用友與條碼系統對接

    scandir函數詳解
    2009-10-30 10:51
    scandir函數:讀取特定的目錄數據
    表頭文件:#include <dirent.h>
    定義函數:int scandir(const char *dir, struct dirent **namelist, nt (*select) (const struct dirent *), nt       
                  (*compar) (const struct dirent **, const struct dirent**));
    函數說明:
             scandir()會掃描參數dir指定的目錄文件,經由參數select指定的函數來挑選目錄結構至參數namelist數組中,最后再調用
    參數compar指定的函數來排序namelist 數組中的目錄數據。每次從目錄文件中讀取一個目錄結構后便將此結構傳給參數select所指的
    函數, select函數若不想要將此目錄結構復制到namelist數組就返回0,若select為空指針則代表選擇所有的目錄結構。scandir()會
    調用 qsort()來排序數據,參數compar則為qsort()的參數,若是要排列目錄名稱字母則可使用alphasort(). 結構dirent定義請參考
    readdir()
    返回值 :成功則返回復制到namelist數組中的數據結構數目,有錯誤發生則返回-1
    錯誤代碼:ENOMEM 核心內存不足
    Example
    #include <dirent.h>
    main()
    {
        struct dirent **namelist;
        int n;
        n = scandir(".", &namelist, 0, alphasort);
        if (n < 0)
            perror("scandir");
        else
        {
            while(n--)
            {
                printf("%s\n", namelist[n]->d_name);
                free(namelist[n]);
            }
            free(namelist);
        }
    }

    轉自:http://blog.sina.com.cn/s/blog_6a113b0a0100uzb3.html

    RFID管理系統集成商 RFID中間件 條碼系統中間層 物聯網軟件集成
    最近免费观看高清韩国日本大全