原创 vector 、deque、 list的使用總結

vector 是一個動態數組, 維護連續的線性空間。 .at()函數可以訪問數組的任意元素,編譯器會檢測下標是否越界,如果越界就會拋出異常。 begin()和end()函數可以獲取指向數組的第一個元素的迭代器和指向最後一個元素的迭代器。

原创 藉助開源項目 學習軟件開發

1. 開始之前¶ 1.1. 這份文檔的目標讀者¶ 軟件開發初學者¶ 這是一份面向軟件開發初學者的文檔,所謂初學者,可以定義爲:學過的語言不超過2種,在已經學過的語言技能方面,能夠完成課程上的大部分習題。從高校教育的通常情況來說,基本能

原创 signal集程序一點疑問

只是作爲學習過程中記錄,建議不要參考 程序: #include <stdio.h>       #include <signal.h>       void checkset();              void main()    

原创 關於socket編程中常用的基本函數

APUE第三章學習記錄: 1.字節順序轉換函數;     用於主機字節序和網絡字節序之間的轉換,因爲兩者存儲方式可能不一樣。 2.地址轉換函數:        用於點分十進制字符串(ASCII碼字符串)和網絡字節序二進制字符串(用於so

原创 排序算法

快速排序  堆排序 合併排序 選擇排序 插入排序 希爾排序 計數排序 桶排序 基數排序

原创 ubuntu下面安裝nginx

什麼是Nginx? Nginx ("engine x") 是一個高性能的 HTTP 和 反向代理 服務器,也是一個 IMAP/POP3/SMTP 代理服務器,在高連接併發的情況下Nginx 是 Apache 服務器不錯的替代品.其特點是佔

原创 遊戲服務器架構設計

首先,二話不說,上圖(用Windows畫圖畫的。。。)這個圖是一個區的架構圖,所有區的架構是一樣的。上面虛線框的ServerGroup和旁邊方框內的架構一樣。圖上的所有x N的服務器,都是多臺一起的。紅線,綠線,和藍線圖上也有圖示,這裏就

原创 編寫Makefile文件

2.Makefile的編寫       假設我們有下面這樣的一個程序,源代碼如下:           /*   main.c   */  

原创 進程 、進程組、會話、控制終端之間的關係

APUE學習記錄: 一個進程組可以包含多個進程       進程組中的這些進程之間不是孤立的,他們彼此之間或者存在者父子、兄弟關係,或者在功能有相近的聯繫。       那linux爲什麼要有進程組呢?其實提供進程組就是方便管理這些進程。

原创 fork vfork 父進程和子進程的內存關係

  fork()會產生一個和父進程完全相同的子進程,但子進程在此後多會exec系統調用,出於效率考慮,linux中引入了“寫時複製“技術,也就是隻有進程空間的各段的內容要發生變化時,纔會將父進程的內容複製一份給子進程。於是起初我就感到奇

原创 Linux Socket編程

1. 網絡中進程之間如何通信 進 程通信的概念最初來源於單機系統。由於每個進程都在自己的地址範圍內運行,爲保證兩個相互通信的進 程之間既互不干擾又協調一致工作,操作系統爲進程通信提供了相應設施,如 UNIX BSD有:管道(pi

原创 整理的一些面試常問語言知識

指針與數組的區別:  C++/C程序中,指針和數組在不少地方可以相互替換着用,讓人產生一種錯覺,以爲兩者是等價的。     數組要麼在靜態存儲區被創建(如全局數組),要麼在棧上被創建。數組名對應着(而不是指向)一塊內存,其地址與容量在生命

原创 神經網絡matlab實現

本文主要內容包括: (1) 介紹神經網絡基本原理,(2) AForge.NET實現前向神經網絡的方法,(3) Matlab實現前向神經網絡的方法 。 第0節、引例         本文以Fisher的Iris數據集作爲神經網絡程序

原创 fork vfork clone區別

在Linux中主要提供了fork、vfork、clone三個進程創建方法。     在linux源碼中這三個調用的執行過程是執行fork(),vfork(),clone()時,通過一個系統調用表映射到sys_fork(),sys_v

原创 僵死進程

1.僵死進程的產生: 在每個進程調用exit()退出的時候,內核釋放該進程所有的資源包括打開的文件,佔用的內存等,但是仍然爲其保留一定的信息(包括進程號,退出狀態  ,運行時間等), 直到父進程通過wait/waitpid來取時才釋放。在