最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Linux系統(tǒng)下基于UDP+sqlite3實(shí)現(xiàn)的單詞查詢器(推薦)

 更新時(shí)間:2025年06月16日 10:14:01   作者:SELSL  
文章介紹基于UDP協(xié)議與SQLite3數(shù)據(jù)庫(kù)實(shí)現(xiàn)的Linux單詞查詢系統(tǒng),包含服務(wù)端與客戶端代碼設(shè)計(jì),通過CSV轉(zhuǎn)DB構(gòu)建單詞表,實(shí)現(xiàn)數(shù)據(jù)查詢及日志記錄功能,采用Makefile管理源碼并展示運(yùn)行結(jié)果,感興趣的朋友一起看看吧

基于UDP+sqlite3實(shí)現(xiàn)的單詞查詢器(Linux系統(tǒng)下)

一、準(zhǔn)備工作

我們首先要準(zhǔn)備一個(gè)單詞表,注意必須要是.csv結(jié)束的表格

其實(shí)里面內(nèi)容和exsl表格一樣

因?yàn)槲覀円褂胹qlite3數(shù)據(jù)庫(kù)來管理單詞表以實(shí)現(xiàn)單詞查詢的功能,所以要把.csv結(jié)束的單詞表轉(zhuǎn)化為.db結(jié)尾的數(shù)據(jù)庫(kù)

Linux終端輸入sqlite3 mydatabase.db進(jìn)入sqlite3數(shù)據(jù)庫(kù),進(jìn)行下圖操作,把.csv格式的單詞表轉(zhuǎn)化為.db的數(shù)據(jù)庫(kù)

二、單詞代碼設(shè)計(jì)總框架

這個(gè)有點(diǎn)大,看下面這個(gè)分開代碼框架圖

根據(jù)這個(gè)我們來實(shí)現(xiàn)代碼。

三、服務(wù)端代碼

1、檢測(cè)main函數(shù)參數(shù)是否正確

檢查是否少輸入了ip、端口號(hào)等信息,如果少輸入產(chǎn)生錯(cuò)誤,退出程序

2、socket創(chuàng)建套接字、使用UDP通信

使用UDP雖然沒有TCP的穩(wěn)定,但是對(duì)于小數(shù)據(jù)頻繁交互比較適合,對(duì)于單詞查詢這種數(shù)據(jù)量比較小的也很小概率回出現(xiàn)錯(cuò)誤。

3、設(shè)置通信結(jié)構(gòu)體

這里主要是配置IP、端口號(hào)

4、bind綁定通信結(jié)構(gòu)體 5、打開sqlite3數(shù)據(jù)庫(kù),準(zhǔn)備開始查詢數(shù)據(jù)庫(kù).db中的單詞

sqlite3打開失敗回結(jié)束程序

6、進(jìn)入死循環(huán),一直使用recvfrom接收客戶端發(fā)來的數(shù)據(jù)

7、接收到了數(shù)據(jù)使用sqlite3中的API sqlite3_exec進(jìn)行查詢

8、不管成功失敗,我們都會(huì)使用sendto發(fā)送成功查到的單詞或失敗信息

9、ctrl+c會(huì)結(jié)束死循環(huán),關(guān)閉sqlite3、關(guān)閉服務(wù)端通信、結(jié)束服務(wù)端程序

四、客戶端代碼

1、使用getenv獲取環(huán)境變量中設(shè)置了的IP號(hào)與端口號(hào)

可以通過vim ~/.bachrc來查看、編寫里面的內(nèi)容

可以看到我這里的環(huán)境變量

2、檢測(cè)參數(shù)

如果沒有單詞參數(shù)則結(jié)束客戶端程序

3、socket創(chuàng)建套接字、使用UDP通信 4、設(shè)置通信結(jié)構(gòu)體

這里和服務(wù)端一樣,還是配置IP,和端口號(hào)

5、connect請(qǐng)求與服務(wù)端進(jìn)行確定

6、向服務(wù)端send發(fā)送查單詞請(qǐng)求

7、rcve接收服務(wù)端查到的數(shù)據(jù)

8、查詢時(shí)間輸出,把查詢時(shí)間+單詞保存到一個(gè)文檔日志里面

9、關(guān)閉查詢?nèi)罩尽㈥P(guān)閉網(wǎng)絡(luò)通信、結(jié)束查詢。

五、代碼展示、結(jié)果展示

在最后提供的資料中source文件夾有server服務(wù)端源碼

總體預(yù)覽:

在最后提供的資料中source文件夾有client客戶端源碼

整體預(yù)覽

兩個(gè)代碼都使用了Makefile進(jìn)行了管理

六、運(yùn)行結(jié)果展示

最后附帶源碼地址:https://download.csdn.net/download/2403_82436914/90564382

到此這篇關(guān)于Linux系統(tǒng)下基于UDP+sqlite3實(shí)現(xiàn)的單詞查詢器(推薦)的文章就介紹到這了,更多相關(guān)udp sqlite單詞查詢器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • SQLite教程(十二):鎖和并發(fā)控制詳解

    SQLite教程(十二):鎖和并發(fā)控制詳解

    這篇文章主要介紹了SQLite教程(十二):鎖和并發(fā)控制詳解,本文講解了鎖和并發(fā)控制機(jī)制概述、文件鎖、回滾日志、數(shù)據(jù)寫入、SQL級(jí)別的事務(wù)控制等內(nèi)容,需要的朋友可以參考下
    2015-05-05
  • SQLite 入門教程二 SQLite的創(chuàng)建、修改、刪除表

    SQLite 入門教程二 SQLite的創(chuàng)建、修改、刪除表

    今天這一篇只涉及到表的相關(guān)內(nèi)容,視圖、觸發(fā)器等到后面再講
    2013-12-12
  • python之sqlalchemy創(chuàng)建表的實(shí)例詳解

    python之sqlalchemy創(chuàng)建表的實(shí)例詳解

    這篇文章主要介紹了數(shù)據(jù)庫(kù)之sqlalchemy創(chuàng)建表的實(shí)例詳解的相關(guān)資料,希望通過本文能幫助到大家,讓大家掌握理解這部分內(nèi)容,需要的朋友可以參考下
    2017-10-10
  • SQLite 入門教程四  增刪改查 有講究

    SQLite 入門教程四 增刪改查 有講究

    增刪改查操作,其中增刪改操作被稱為數(shù)據(jù)操作語(yǔ)言 DML,相對(duì)來說簡(jiǎn)單一點(diǎn)。 查操作相對(duì)來說復(fù)雜一點(diǎn),涉及到很多子句,所以這篇先講增刪改操作,以例子為主,后面再講查操作
    2013-12-12
  • SQLite教程(十):內(nèi)存數(shù)據(jù)庫(kù)和臨時(shí)數(shù)據(jù)庫(kù)

    SQLite教程(十):內(nèi)存數(shù)據(jù)庫(kù)和臨時(shí)數(shù)據(jù)庫(kù)

    這篇文章主要介紹了SQLite教程(十):內(nèi)存數(shù)據(jù)庫(kù)和臨時(shí)數(shù)據(jù)庫(kù),本文講解了它們的創(chuàng)建方法和相關(guān)知識(shí),需要的朋友可以參考下
    2015-05-05
  • 嵌入式數(shù)據(jù)庫(kù)SQLite?3配置使用講解

    嵌入式數(shù)據(jù)庫(kù)SQLite?3配置使用講解

    本文強(qiáng)調(diào)嵌入式項(xiàng)目中SQLite3數(shù)據(jù)庫(kù)的重要性,因其零配置、輕量級(jí)、跨平臺(tái)及事務(wù)處理特性,可保障數(shù)據(jù)溯源與責(zé)任明確,詳細(xì)講解安裝配置、基礎(chǔ)語(yǔ)法及SQLiteStudio工具使用,提升數(shù)據(jù)管理效率,感興趣的朋友跟隨小編一起看看吧
    2025-06-06
  • SQLite3的綁定函數(shù)族使用與其注意事項(xiàng)詳解

    SQLite3的綁定函數(shù)族使用與其注意事項(xiàng)詳解

    這篇文章主要介紹了SQLite3的綁定函數(shù)族使用與其注意事項(xiàng)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),相信對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來一起看看吧。
    2017-03-03
  • SQLite3基本介紹與常用語(yǔ)句匯總(最新整理)

    SQLite3基本介紹與常用語(yǔ)句匯總(最新整理)

    SQLite3是一款輕量級(jí)嵌入式數(shù)據(jù)庫(kù),無需服務(wù)器,單文件存儲(chǔ),支持標(biāo)準(zhǔn)SQL與ACID事務(wù),適用于移動(dòng)應(yīng)用、嵌入式系統(tǒng)及快速開發(fā)場(chǎng)景,具備跨平臺(tái)、易部署、高效管理的特點(diǎn),本文給大家介紹SQLite3介紹與常用語(yǔ)句匯總,感興趣的朋友一起看看吧
    2025-06-06
  • SQL中使用ESCAPE定義轉(zhuǎn)義符詳解

    SQL中使用ESCAPE定義轉(zhuǎn)義符詳解

    這篇文章主要介紹了SQL中使用ESCAPE定義轉(zhuǎn)義符的相關(guān)資料,需要的朋友可以參考下
    2016-09-09
  • SQLite教程(二):C/C++接口簡(jiǎn)介

    SQLite教程(二):C/C++接口簡(jiǎn)介

    這篇文章主要介紹了SQLite教程(二):C/C++接口簡(jiǎn)介,本文講解了C/C++接口概述、核心對(duì)象和接口、參數(shù)綁定等內(nèi)容,需要的朋友可以參考下
    2015-05-05

最新評(píng)論

临洮县| 秀山| 宜章县| 泸溪县| 霍邱县| 碌曲县| 德格县| 临邑县| 游戏| 桃江县| 蛟河市| 阳曲县| 松原市| 嘉义县| 和田市| 喀喇| 河间市| 互助| 黔西县| 巴中市| 绥宁县| 大田县| 循化| 高唐县| 崇文区| 利辛县| 辽阳县| 高雄县| 湘乡市| 嘉荫县| 红河县| 阿坝县| 尉氏县| 嘉义市| 罗江县| 青河县| 涡阳县| 新龙县| 罗城| 龙山县| 华亭县|