中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

Unix/Linux編程之ftok函數(shù)用法-創(chuàng)新互聯(lián)

linux 中ftok函數(shù)的用法

成都創(chuàng)新互聯(lián)服務(wù)項目包括建華網(wǎng)站建設(shè)、建華網(wǎng)站制作、建華網(wǎng)頁制作以及建華網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,建華網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到建華省份的部分城市,未來相信會繼續(xù)擴大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
1、函數(shù)作用: 系統(tǒng)建立IPC通訊(如消息隊列、共享內(nèi)存時)必須指定一個ID值。通常情況下,該id值通過ftok函數(shù)得到
2、函數(shù)原型:
        #include <sys/types.h>
                 #include <sys/ipc.h>

     key_t ftok(const char *pathname, int proj_id);
3、函數(shù)參數(shù)解析:
    a、const char *pathname:用于產(chǎn)生key_t值的文件名(文件必須存在),
    b、int proj_id:proj_id是子序號,雖然為int,但是只有8個比特被使用(0-255)
4、返回值
    當成功執(zhí)行的時候,一個key_t值將會被返回,否則 -1 被返回。
5、函數(shù)內(nèi)部實現(xiàn)過程
    在一般的UNIX實現(xiàn)中,是將文件的索引節(jié)點號取出,前面加上子序號得到key_t的返回值。
如指定文件的索引節(jié)點號為65538,換算成16進制為 0x010002,而你指定的ID值為38,
換算成16進制為0x26,則最后的key_t返回值為0x26010002。

注意


1、假如要確保key_t值不變,要目確保ftok的文檔不被刪除 ,要么不用ftok,指定一個固定的key_t值。
    2、另外說一句:在aix等操作系統(tǒng)上,有多個文檔系統(tǒng),會出現(xiàn)分布在不同的文檔系統(tǒng)上的兩個文檔具備相同的索引節(jié)點號,
    此時用ftok對這兩個文檔進行操 作,只要id參數(shù)不變,得到的key_t值相同,造成創(chuàng)建消息隊列失敗。但是這種情況相當少見罷了。
    因為在開發(fā)中涉及多種系統(tǒng)平臺,在系統(tǒng)移植時發(fā)現(xiàn)ftok()函數(shù)在不同平臺下存在一定的差異性。
    當然,根本原因不在于ftok()本身,而應(yīng)該是 操作系統(tǒng)對于文件系統(tǒng)管理的差異性。

6、測試用例:

#include<stdio.h>
#include<unistd.h>
#include<stdlib.h>
#include<string.h>
#include<errno.h>
#include<sys/types.h>
#include<sys/ipc.h>

int main(int argc,char *argv[])
{
        key_t key;
        if(3 != argc)
        {
                printf("usage:ftok <patname> <pri_id>\n");
                exit(1);
        }

        key = ftok(argv[1],atoi(argv[2]));
        printf("key = %x\n",key);
        return 0;

}

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

網(wǎng)頁題目:Unix/Linux編程之ftok函數(shù)用法-創(chuàng)新互聯(lián)
分享地址:http://www.rwnh.cn/article42/dcidec.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、網(wǎng)頁設(shè)計公司、網(wǎng)站設(shè)計公司、網(wǎng)站策劃、全網(wǎng)營銷推廣、云服務(wù)器

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)
咸阳市| 乌海市| 宜春市| 广德县| 南宫市| 寿阳县| 嘉黎县| 衡水市| 铁岭市| 启东市| 南安市| 文成县| 通海县| 东方市| 高青县| 九龙坡区| 东丽区| 濮阳市| 德昌县| 杭锦后旗| 定日县| 徐闻县| 齐河县| 进贤县| 鹰潭市| 牟定县| 维西| 广德县| 工布江达县| 莱芜市| 临漳县| 阿拉尔市| 阿拉善左旗| 棋牌| 闸北区| 奉新县| 定结县| 兰坪| 连城县| 大石桥市| 开化县|