原创 QT中LineEdit輸入限制

qt的三種驗證類: 1。輸入int類型 QValidator *validator=new QIntValidator(100,999,this); QLineEdit *edit=new QLineEdit(this); edi

原创 Linux學習筆記(內存映射mmap)

內存映射 內存映射,簡而言之就是將用戶空間的一段內存區域映射到內核空間,映射成功後,用戶對這段內存區域的修改可以直接反映到內核空間,同樣,內核空間對這段區域的修改也直接反映用戶空間。那麼對於內核空間<---->用戶空間兩者之間需要

原创 Linux學習筆記(文件操作)

文件描述符 講到文件 我們就需要知道什麼是文件描述符,我們所有對設備和文件的操作都是使用文件描述符來進行的。 通常用fd表示文件描述符。 文件描述符是一個非負的整數,它是一個索引值,並指向在內核中每個進程所打開的文件的記錄表 當需

原创 Linux學習筆記(孤兒進程與殭屍進程)

在Unix/Linux中一般情況下,子進程是由父進程通過fork函數創建的。但是子進程的結束和父進程的運行時一個異步過程,所以子進程被父進程創建出來以後父進程無法預測子進程什麼時候結束。所以父進程通常會通過調用wait()或者wa

原创 Linux學習筆記(socket網絡編程)

socket概念 在TCP/IP協議中,“IP地址+TCP或者UDP端口號”衛衣表示網絡通訊中的一個進程,“IP地址+端口號”就稱爲socket,socket也是一個描述符。 在TCP協議中,建立連接的兩個進程各自有一個socke

原创 Linux學習筆記(shell腳本)

Shell是系統的用戶界面,提供了用戶與內核進行交互操作的一種接口。它接收用戶輸入的命令並把它送入內核去執行。 實際上Shell是一個命令解釋器,它解釋由用戶輸入的命令並且把它們送到內核。不僅如此,Shell有自己的編程語言用於對

原创 Qt學習(5)Qt中的事件

1 Qt中的事件 1.1 鼠標事件 1.2 鼠標進入事件 enterEvent 1.3 鼠標離開事件 leaveEvent 1.4 鼠標按下 mousePressEvent ( QMouseEvent *ev) 1.5

原创 關於Qt中中文亂碼的問題

有時候我們會再使用Qt的時候遇到這樣的問題 就是中文顯示出來是亂碼 解決方法: 1:加上頭文件#include 然後寫 QTextCodec *codec = QTextCodec::codecForName(“GBK”);

原创 ITK踩坑之旅(1)ITK的編譯與安裝(VS2015)

** 一:準備工作 ** 1:首先要下載ITK http://www.itk.org/ITK/resources/software.html 我使用的版本是4.13.2 各種版本操作都基本差不多 2:下載CMAKE http://

原创 Qt學習 文件對話框與目錄對話框

文件對話框 顧名思義,是用來選擇文件的 QFileDialog::getopenFileName(this,"選擇一個文件", 默認路徑); 通過 QFileDialog::getopenFileNames(this,"選擇

原创 關於內存對齊的問題

看如下結構體: #include <stdio.h> typedef struct _STU { int id; char name[20]; char sex;

原创 指針

什麼叫指針 指針與指針變量:一個變量的地址就稱之爲該變量的“指針”,而“指針變量”則是用來存放這個地址的變量。 地址:內存中存儲單元的位置編號就是地址。 存儲單元:大小固定,1Byte(字節)。 而在32位系統中我們最多可以有(2

原创 鏈表和數組

鏈表和數組都是我們用來存儲一系列數的基本數據結構,但是這兩種數據結構各有各的優缺點! 數組是我們初學者最常用的一種數據結構,數組的有點在於知道一其中一個元素的地址,我們就可以推出其他數組元素的地址,但是我們知道在C中,數組是必須要

原创 關於TeamViewer的下載安裝登錄過程(記錄)

1:關於TeamViewer的下載 在網上搜索TeamViewer,找到自己想要的版本進行下載即可。 2:關於TeamViewer的登錄 主要記錄登錄所遇到的問題 (1)提前註冊TeamViewer賬號,因爲我的賬號是公司已經幫我

原创 Qt學習(1)信號和槽

信號和槽 以我自己的理解來說,信號和槽就是一個響應機制,我們提前將信號和槽連接起來,當信號被觸發時,槽函數就被調用。舉個例子來說,就相當於你聽到自己肚子叫了,你就知道你餓了,所以就去吃飯,而肚子叫就可以看作一個信號,去吃飯就可以看