原创 C++枚舉體知識點小結

C++枚舉體類型小結 總結一下最近碰到到枚舉體相關的知識點: 首先說明一下定義,枚舉體是一種數據類型,用於存儲用戶定義的數據集合,一個枚舉體類型定義後, 它和整型數據類型如 int, long 等的用法類似.

原创 Libevent 編程- 定時器事件(timer event)

Libevent 編程- 定時器事件(timer event) 本文介紹Libevent 三種事件之一的定時器事件。 該事件可以用來註冊定時事件和週期性事件。Libevent 根據所有定時器事件的最小超時時間來設置系統 I/O 的

原创 MySQL 數據庫編程-連接數據庫

在做程序開發時,總免不了要和數據庫打交道,在這裏分享一個連接 ,查詢MySQL 數據庫的小程序: #include <stdio.h> #include <stdlib.h> #include <mysql/mysql.h> i

原创 Linux查看程序佔用的端口-lsof

在作網絡編程時,我們經常要知道程序打開的端口號。這裏介紹一種簡單的端口號查詢命令-lsof和具體方法: 首先,介紹一下 losf 命令。使用 “man lsof” 查看lsof的幫助文檔。這裏截取一部分: NAME

原创 Libevent編程-捕獲 signal

Libevent 是一個輕量級的開源高性能網絡庫,事件驅動(event-driven), 實現基於 Reactor 模式,網上學習資料衆多,這裏分享一下關於 signal 的處理。 首先給出 libevent 對 signal

原创 轉載:基於C語言中野指針的深入解析

*原文鏈接:http://www.jb51.net/article/39692.htm “野指針”不是NULL指針,是指向“垃圾”內存的指針。人們一般不會錯用NULL指針,因爲用if語句很容易判斷。但是“野指針”是很危險的,if語

原创 常用排序算法C++版小結

常用排序算法及其時間複雜度和空間複雜度 代碼來自網絡和日常整理: #include <iostream> using std::cout; inline void swap(int &a, int &b) { int tmp

原创 STL類指針容器container 元素clear 注意事項

在使用 STL 容器時, 涉及到 C++多態(polymorphism)和虛函數時,經常會遇到使用容器存儲類指針,當你要刪除某個元素或者(erase)或者清空容器(clear)時,直接調用 erase或 clear 函數,指針指向

原创 轉載:Segmentation fault到底是何方妖孽

轉載一篇很不錯的分析Linux “Segmentation fault”報錯的文章    Linux上開發時最惱火的就是遇到“Segmeta

原创 C++類的 explicit 關鍵字和隱式轉換

C++類的 explicit 關鍵字和隱式轉換 explicit 關鍵字用於 C++的類定義中,其作用是禁止隱式轉換和複製初始化操作: The explicit specifier specifies that a constr

原创 C++ STL常用容器刪除操作注意事項

C/C++程序員對STL 容器肯定不會陌生, 以下是對常用容器進行 erase 操作注意事項的總結: vector vector 容器是用數組實現的, 它在內存是連續分佈的.對它進行 insert 或 erase 操作涉及到對插

原创 Linux/ Unix 鍵盤檢測程序

鍵盤檢測程序 最近在看Neil Matthew和Rick Stones的Beginning Linux Programming, 在 terminals 學到了如何檢測按鍵的方法.話不多說先上代碼: #include <unist

原创 Windows隱藏工具欄並使程序窗口全屏顯示

前幾天用VS看代碼時發現桌面空間不夠,於是就打起了任務欄的主意,然而windows本身帶的自動隱藏功能並不能很好的解決我的問題,因爲當鼠標劃過時,任務欄還會彈出.在網上也沒有找到合適的解決辦法,於是費了一天查資料,做出來了win3

原创 浮點數精度計算

浮點數精度計算 單精度浮點數精度爲7,雙精度浮點數的精度爲16. 這是計算機編程的常識。這裏介紹一下7和16這兩個數字是如何來的。 首先要說說浮點數的表示方法,根據 IEEE 754,任何一個浮點數的二進制形式可以寫作 V=(−1)S∗

原创 Pthread 開發-入門

Pthread 開發-入門 在內存共享式的多處理器架構中,線程可用用於實現並行機制(parallelism)。然而由於歷史原因,硬件供應商們的對線程的實現並不相同,使得開發者不得不考慮代碼移植問題。對於UNIX系統,存在一套基於 IEEE