C++ 面試

[置頂] 輕鬆搞定面試中的二叉樹題目

出處:http://blog.csdn.net/luckyxiaoqiang/article/details/7518888/ 樹是一種比較重要的數據結構,尤其是二叉樹。二叉樹是一種特殊的樹,在二叉樹中每個節點最多有兩個子節點,一般稱爲左子節點和右子節點(或左孩子和右孩子),並且二叉樹的子樹…
閱讀(310) 評論(0)

編寫類String的構造函數、析構函數和賦值函數

編寫String類的4個函數: class String { public: String(const char *str = NULL);// 普通構造函數 String(const String &other); // 拷貝構造函數 ~ …
閱讀(237) 評論(0)

100條經典C++語言筆試題目-後50題

鏈接至100條經典C++語言筆試題目-前50題
閱讀(655) 評論(0)

100條經典C++語言筆試題目-前50題

鏈接至100條經典C++語言筆試題目-後50題
閱讀(1801) 評論(1)

【面試】C語言與C++的區別

C是一個結構化語言,如譚老爺子所說:它的重點在於算法和數據結構。C程序的設計首要考慮的是如何通過一個過程,對輸入(或環境條件)進行運算處理得到輸出(或實現過程(事務)控制),而對於C++,首要考慮的是如何構造一個對象模型,讓這個模型能夠契合與之對應的問題域,這樣就可以通過獲取對象的狀態信息得到輸出…
閱讀(239) 評論(0)

【面試】TCP和UDP的區別

TCP協議與UDP協議的區別     首先咱們弄清楚,TCP協議和UCP協議與TCP/IP協議的聯繫,很多人犯糊塗了,一直都是說TCP/IP協議與UDP協議的區別,我覺得這是沒有從本質上弄清楚網絡通信! TCP/IP協議是一個協議簇。裏面包括很多協議的。UDP只是其中的一個。之所以命名爲TCP…
閱讀(282) 評論(0)

【面試】:數組和鏈表的區別

數組: 數組是將元素在內存中連續存放,由於每個元素佔用內存相同,可以通過下標迅速訪問數組中任何元素。但是如果要在數組中增加一個元素,需要移動大量元素,在內存中空出一個元素的空間,然後將要增加的元素放在其中。同樣的道理,如果想刪除一個元素,同樣需要移動大量元素去填掉被移動的元素。如果應用需要快速…
閱讀(222) 評論(0)

內存對齊的規則以及作用

首先由一個程序引入話題:  1 //環境:vc6 + windows sp2  2 //程序1  3 #include   4   5 using namespace std;  6   7 struct st1   8 {  9     char a ; 10     i…
閱讀(168) 評論(0)

什麼是0長數組?

在標準C和C++中0長數組如charArray[0]是不允許使用的,因爲這從語義邏輯上看,是完全沒有意義的。 但是,GUN中卻允許使用,而且,很多時候,應用在了變長結構體中,如: StructPacket { Int state; Int len; Char cData[0]; //這…
閱讀(176) 評論(0)

內存分配中堆和棧的區別

數據結構的棧和堆     首先在數據結構上要知道堆棧,儘管我們這麼稱呼它,但實際上堆棧是兩種數據結構:堆和棧。     堆和棧都是一種數據項按序排列的數據結構。 棧就像裝數據的桶或箱子     我們先從大家比較熟悉的棧說起吧,它是一種具有後進先出性質的數據結構,也就是說後存…
閱讀(241) 評論(0)

const常量與define宏定義的區別

#define RADIUS 100; const  float   RADIUS = 100; (1) 編譯器處理方式不同   define宏是在預處理階段展開。   const常量是編譯運行階段使用。 (2) 類型和安全檢查不同   defi…
閱讀(3113) 評論(1)

空指針和未初始化的指針的區別

================================================================================ 空指針的簡單描述: 它 “與任何對象或函數的指針值都不相等”。也就是說, 取地址操作符 & 永遠也不能得到空指針, 同樣…
閱讀(1954) 評論(0)

字符型變量ch的值爲英文字母 的c語言表達式

英文字母包括大寫字母和小寫字母,用這樣的表達式 if((ch>=’a’&&ch=’A’&&ch
閱讀(1518) 評論(0)

將字符串中連續出現的重複字母進行壓縮

/* 通過鍵盤輸入一串小寫字母(a~z)組成的字符串。請編寫一個字符串壓縮程序,將字符串中連續出現的重複字母進行壓縮,並輸出壓縮後的字符串。 壓縮規則: 1、僅壓縮連續重複出現的字符。比如字符串”abcbc”由於無連續重複字符,壓縮後的字符串還是”abcbc&…
閱讀(788) 評論(0)

三種內存分配方式

內存分配方式有三種:  從靜態存儲區域分配。內存在編譯的時候就已經分配好,這塊內存在程序的整個運行期間都存在。例如全局變量,static變量。  在棧上創建。在執行函數時,函數內局部變量的存儲單元都可以在棧上創建,函數執行結束時這些存儲單元自動被釋放。棧內存分配運算內置於處理器的指令集中,…
閱讀(275) 評論(0)

C++爲什麼不能通過函數返回值區分函數重載?

函數的兩個要素:參數與返回值。    如果同名函數的參數不同(包括類型、順序不同),那麼容易區別出它們是不同的函數。   如果同名函數僅僅是返回值類型不同,有時可以區分,有時卻不能。例如: void Function(void); int Function (void); 上述兩個…
閱讀(3988) 評論(0)

算法與程序設計——實現字符串翻轉

題目: 實現字符串反轉函數 代碼:
#include #include using namespace std; void main(){ string s = “abcdefghijklm”; cout << s << endl; in…
閱讀(264) 評論(0)

算法與程序設計——由a-z,0-9組成3位的字符密碼

題目: 由a-z、0-9組成3位的字符密碼,設計一個算法,列出並打印所有可能的密碼組合(可用僞代碼、C、C++、Java實現) C代碼:
#include #include int main() { char a, b, c; for (a = ‘0’; a <= ‘z’;a++)…
閱讀(1639) 評論(0)

面試題目——多態性的考查

筆試題目:
#include using namespace std; class A { public: void foo() { printf(“1\n”); } virtual void fun() { printf(“2\n”)…
閱讀(270) 評論(0)

new、delete、malloc、free關係

    <div class="article_description">
    相同點:

都可用於申請動態內存和釋放內存
不同點:
(1)操作對象有所不同。
malloc與free是C++/C 語言的標準庫函數,new/delete 是C++的運算符。對於非內部數據類的對象而言,光用malloc/free 無法滿足動態對象的要求。對象在創建的同時要自動執行構造函數, 對象消亡…

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章