原创 C語言寫的掃雷小程序

還記得上初中那會,上信息課都在電腦上玩的掃雷嗎?那時候只會玩,不知道怎麼實現,現在有了這個能力,也寫了一個,雖然很糙,但還是能湊合玩的。 廢話不多說,直接上代碼 #define _CRT_SECURE_NO_WARNINGS 1 #if

原创 消息隊列實現進程間通信

進程間通信 —IPC(InterProcess Communication) 進程間通信是不同的進程通過一個或多個文件來傳遞信息。經常用到的通信方式有兩種,一種是通過管道來實現兩個進程間的通信,管道機制是創建的不同進程通過調用管道函數在內

原创 C語言的簡易通訊錄

在我們的平常生活中常常會用到電話通訊錄,常用的功能有添加聯繫人,刪除,查找,刪除,清空,顯示,按姓名排序等 現在我們就來實現以下要求的簡易通訊錄 實現一個通訊錄; 通訊錄可以用來存儲1000個人的信息,每個人的信息包括: 姓名、性別、年齡

原创 註釋轉換-小程序

編寫代碼時會有多種註釋方式,但有的編輯環境不識別其他的註釋方式,因此做個小項目來實現將註釋方式統一的改爲一種。本次註釋轉換這個小項目就是將所有的C註釋全部轉換爲C++註釋。 要實現這個轉換就要先理清實際過程中代碼都有哪幾種狀態!所以先來

原创 通俗易懂的CRC循環校驗

CRC循環校驗 CRC編碼,也稱爲多項式編碼。它是在數據通信中常用的一種差錯校驗碼。由信息字段和校驗字段組成。其中信息字段和校驗字段長度可以任意選定。 先來看看CRC校驗的原理: 在發送方要將d比特的數據D發送給接收方,所以

原创 TCP套接字編程

TCP套接字編程 在實現一個主機上的不同進程相互之間通信,可以用管道、信號量或者共享內存來實現。如果要實現網絡中不同進程間的通信就要使用套接字編程來實現。一個套接字就是一個IP地址和這個IP地址上的唯一端口號。 server

原创 ROKID開發板初使用

ROKID OS簡介 RokidOS 是一個針對多種不同設備類型打造的開放源代碼以語音交互爲特色的軟件堆棧。RokidOS 主要目的是爲運營商、設備製造商、DesignHouse 和開發者創造一個開放的軟件平臺,使他們能夠將創新理念變

原创 C++類實現順序表和雙向鏈表

C++類實現順序表與雙向鏈表 順序表 1.#include <assert.h>2.#include <iostream>3.using namespace std;4.5.typedef int DataType;6.7.cl

原创 虛函數表&&多態模型

虛函數表&&多態模型 在虛擬繼承時,在派生類中會有偏移量表格指針,用來指向偏移量表格。在多態中如果派生類將基類的虛函數重寫之後,那麼基類中的虛函數和派生類中的虛函數在內存中的存儲位置又是什麼樣的呢? 單繼承多態模型 1.cla

原创 剖析C++5種繼承模型

剖析C++5種繼承模型 單繼承 若一個子類(派生類)只有一個父類(基類)時,叫單繼承。  若一個子類(派生類)有有多個父類(派生類)時,叫多繼承。  先來看看單繼承模型 1.class C2.{3.public:4. C()5

原创 C++繼承

C++繼承 繼承是C++中一種重要的對象複用手段,並且也是以後實現多態的基礎 在類中有三種訪問限定符:public、protected、private。所以在繼承方式上也就有三種方式的繼承:分別是 1、公有繼承(關鍵詞:publ

原创 C++多態

C++多態 多態是C++三大特性之一。  簡單來說多態就像是“一個接口,多種形態”。多態根據函數地址綁定的先後次序可以分爲靜態多態和動態多態。 靜態多態:函數的調用是在編譯期間完成的(靜態綁定。函數重載)。  動態多態:函數的調用

原创 Linux進程池、線程池

Linux進程池、線程池 一個子進程是通過進程動態內存分配的方式創建的,這種創建子進程的方式雖然能夠獲得資源,但是是有很多缺點的 1、動態創建進程是比較耗時間的,這將導致較慢的客戶響應。  2、動態創建的子進程(或子線程)通常只用

原创 UDP套接字編程

UDP套接字編程 udp是一種無連接的不可靠傳輸協議,和tcp最大的區別就是不需要建立可靠連接,直接就可以發送數據,也不需要保證數據可靠性傳輸,優點是快速,不需要消耗太多資源。 UDP套接字編程時,不需要像TCP那樣去監聽看誰連接上

原创 shell腳本截取字符串

shell腳本截取字符串 1、使用#截取,刪除左邊字符,保留右邊的 echo ${變量名+#*加起始位置} 結果 val表示變量名,#是分隔符,*表示刪除,//表示刪除//以及左邊所有 2、使用##號截取,*刪除  e