原创 GDB 格式化結構體輸出及記錄到文件

GDB 常用命令參考手冊 set print address set print address on 打開地址輸出,當程序顯示函數信息時,GDB會顯出函數的參數地址。系統默認爲打開的, show print address

原创 《effective C++》讀書筆記(二)

11. 1)       如果你爲class添加一個成員變量(尤其是類成員變量),你必須同時修改copying函數,所有構造函數以及任何非標準形式的operator=。 2)       copying函數應該確保複製“對象內的所有成員變

原创 對幾種主流編程語言的評價

 C語言 雖說C語言在內存管理方面存在嚴重的缺陷,不過它還是在某些應用領域裏稱王稱霸。對於那些要求最高的效率,良好的實時性,或者與操作系統內核緊密關聯的程序來說,C仍然是很好的選擇。 C良好的可移植性也爲它加了分。不過現在很多其他的語

原创 new限定區域分配內存

#include <iostream> #include<stdio.h> #include <new>//需要添加該頭文件 using namespace std; const int ARRLEN = 100; int static

原创 《算法》第一章——判斷兩個整數是否互質

判斷兩個整數互質的方法        概念:公約數只有1的兩個數叫做互質數。根據互質數的概念可以對一組數是否互質進行判斷。如:9和11的公約數只有1,則它們是互質數。 求商判斷法:用大數除以小數,如果除得的餘數與其中較小數互質,則原來兩個

原创 《算法》第一章——打印文件目錄結構

轉載自:http://blog.csdn.net/nbda1121440/article/details/9120219-------Linux打印文件目錄結構 代碼: #include <unistd.h> #include <stdi

原创 C語言變長參數實現以及它們在棧上的分佈

#include <stdio.h> #include <stdlib.h> #include <stdarg.h> void fun(int num, ...) { int *p = &num + 1; printf("%p-->

原创 具有默認實參的構造函數的類的對象的生成方法。

#include <iostream> using namespace std; class Rectangle { public: Rectangle():x1(0),x2(0),y1(0),y2(0){cout<<"defa

原创 虛函數和動態綁定中一個易忽略的知識點

#include<iostream> class B { public: void fb(){fun();} virtual fun(){std::cout<<"B::fun"<<std::endl;} }; class D:p

原创 C++命名空間namespace的使用規範

1.命名空間 namespacens { ………//將內容添加到命名空間中 } using namespace ns; ……..//聲明命名空間後,表示ns命名空間裏面的內容對於這條聲明後的代碼是可見的。 但是如果聲明瞭兩個命名空間n

原创 《算法》第一章——中綴表達式轉前綴和後綴表達式

思路: 參考中的文章已經將思路講的非常詳細了。 中綴轉前綴: (1) 初始化兩個棧:運算符棧S1和儲存中間結果的棧S2;(2) 從右至左掃描中綴表達式;(3) 遇到操作數時,將其壓入S2;(4) 遇到運算符時,比較其與S1棧頂運算符的優

原创 《effective C++》讀書筆記(一)

1.類中遇到需要使用#define的地方要儘量避免。 1)       在類中避免 #define NUM 10 int array[NUM]; 使用枚舉變量解決,即enumhack。 2)       在類中避免 #define MAX

原创 基於文本行協議

 很多互聯網上的協議例如HTTP、SIP、SMTP、FTP的控制連接協議都是基於文本行的。所謂基於文本行,指的是信息以文本傳遞,一個信息單元傳遞完畢後要傳送換行。比如對於HTTP的GET請求來說,GET /index.html HTT

原创 關於void*與void**的區別

由於void就是不檢查數據類型,所以,對於編譯器來說, void* 和 void** ,甚至後面n個 * ,都是一樣的. 問題的關鍵在於,讓我們這些編程的人可以區分. 原則上,void* 可以是一個一級指針,二級指針,甚至是n級指針. 但

原创 《算法》第三章——二叉查找樹中的遞歸

如果給定的鍵key小於二叉查找樹的根節點的鍵,那麼小於等於key的最大鍵floor(key)一定在根節點的左子樹中;如果給定的鍵key大於二叉查找樹的根節點,那麼只有當根節點右子樹中存在小於等於key的節點時,小於等於key的最大鍵纔會出