Time of Update: 2018-12-05
ANSI C標準中有幾個標準預定義宏:__FILE__ __DATE__ __TIME___ __LINE__ 等__LINE__:在原始碼中插入當前原始碼行號;__FILE__:在源檔案中插入當前源檔案名稱;__DATE__:在源檔案中插入當前的編譯日期__TIME__:在源檔案中插入當前編譯時間;__STDC__:當要求程式嚴格遵循ANSI
Time of Update: 2018-12-05
老的問題了。今天稍微總結了下,有遺漏的地方和錯誤的地方還望大家補充。關於使用大括弧初始化: class和struct如果定義了建構函式的話,都不能用大括弧進行初始化。 如果沒有定義建構函式,struct可以用大括弧初始化。
Time of Update: 2018-12-05
const修飾符可以把對象轉變成常數對象,什麼意思呢? 意思就是說利用const進行修飾的變數的值在程式的任意位置將不能再被修改,就如同常數一樣使用! 使用方法是:const int a=1;//這裡定義了一個int類型的const常數變數a; 但就於指標來說const仍然是起作用的,以下有兩點要十分注意,因為下面的兩個問題很容易混淆! 我們來看一個如下的例子:#include <iostream> using namespace std;
Time of Update: 2018-12-05
看了網上別人關於指標的文章,總結了以下幾點1.記憶體配置的三種方式 (1)從靜態儲存地區分配。記憶體在程式編譯的時候就已經分配好,這塊記憶體在程式的整個運行期間都存在。例如全域變數,static變數。 (2)在棧上建立。在執行函數時,函數內局部變數的儲存單元都可以在棧上建立,函數執行結束時這些儲存單元自動被釋放。棧記憶體配置運算內建於處理器的指令集中,效率很高,但是分配的記憶體容量有限。 (3)
Time of Update: 2018-12-05
這是一篇我所見過的關於指標的最好的入門級文章,它可使初學 者在很短的時間內掌握複雜的指標操作。雖然,現在的Java、C#等語言已經取消了指標,但作為一個C++程式員,指標的直接操作記憶體,在資料操作方面有 著速度快,節約記憶體等優點,仍是很多C++程式員的最愛。指標就像是一把良劍,就看你怎麼去應用它! 什麼是指標?
Time of Update: 2018-12-05
1.模板的定義和聲明分別放在hpp檔案和cpp檔案的時候,會出現連結錯誤,解決這個問題有三種方法: 1)在hpp檔案的末尾加上#include“.hpp" 2)在#include".hpp"的地方同時也加上#include".cpp" 3)不要cpp檔案,定義放在hpp下面 2.typename在模板中有兩個作用,一個是放在template後面,表示後面的是一個模板參數,另一個是typename表示引用模板類內的類型,例如typename T::type
Time of Update: 2018-12-05
簡介當我自己寫程式需要用到const的時候,或者是讀別人的代碼碰到const的時候,我常常會停下來想一會兒。許多程式員從來不用const,理由是即使沒用const他們也這麼過來了。本文僅對const的用法稍作探討,希望能夠對提高軟體的原始碼品質有所協助。 常變數變數用const修飾,其值不得被改變。任何改變此變數的代碼都會產生編譯錯誤。Const加在資料類型前後均可。 例如void main(void) { const int i = 10; //i,j都用作常變數
Time of Update: 2018-12-05
1. 以下三條輸出語句分別輸出什嗎?[C易]char str1[] = "abc";char str2[] = "abc";const char str3[] = "abc"; const char str4[] = "abc"; const char* str5 = "abc";const char* str6 = "abc";cout << boolalpha << ( str1==str2 ) << endl; //
Time of Update: 2018-12-05
int Strcmp(char *str1, char *str2){ int i=0; int b=0; while(str1[i]||str2[i]) { if(str1[i]>str2[i]) { b=1;break; } else if(str1[i]<str2[i]) { b=-1;break; } i++; } return b;}********
Time of Update: 2018-12-05
文章目錄 Puzzles PuzzlesThe following table describes the 10 puzzles that you will be solving in bits.c. The ``Rating'' field gives the difficulty rating (the number of points) for the puzzle, and the ``Max ops'' field gives
Time of Update: 2018-12-05
在C++語言中struct具有了“類” 的功能,其與關鍵字class的區別在於struct中成員變數和函數的預設存取權限為public,而class的為private。例如,定義struct類和class類:struct structA{char a;…}class classB{ char a; …} 則:struct A a;a.a = 'a'; //訪問public成員,合法classB b;b.a =
Time of Update: 2018-12-05
Pascal、C和 C++這些廣為編程人員熟悉的程式設計語言,為編程人員在實際開發工作中提 供了理想的功能,和這些語言的功能相比,Java似乎更勝一籌。Java的結構無關性、真正的面 向對象和與Internet的協同工作等特性比上述任何一種語言更顯得完善。Java的許多術語來 自於C++,其文法也來自於C++。Java比C/C++易學、易用,且有強大的內建功能。當Java在編 程領域得到廣泛應用後,C++將可能退出曆史舞台,因為Java能做C++的所有事情,同時,Java的
Time of Update: 2018-12-05
彙編揭秘C語言中的參數傳遞問題[zz]文章作者:cook702很多學習彙編的朋友想必對C也比較瞭解,因為在當前大學的課程體系裡,它很有可能就是你接觸到的第一門程式設計語言。由於對電腦的理解不夠,學習時必定會遇到各種問題。有些問題是你通過思考就可以解決的,而更多的問題則是你無從思考,就好像它天生就是這樣,你只要記住就OK了。然而這樣的學習方式是機械的,更是沒有創造力的。只有真正理解了C語言,你才有能力去駕馭它,否則它和你之間永遠會隔著一層窗戶紙,雖然很薄,但是你永遠也捅不透。這是為什麼呢?其實道理
Time of Update: 2018-12-05
在C裡,記憶體管理是通過專門的函數來實現。另外,為了相容各種程式設計語言,作業系統提供的介面通常是 C 語言寫成的函式宣告 (Windows 本身也由C和組合語言寫成)。 包含的標頭檔為:<stdlib.h> and
Time of Update: 2018-12-05
邊界對齊:在要求邊界對齊的機器上,整型值儲存的起始位置只能是某些特定的位元組,通常是2或4的倍數。 變數的值,就是分配給該變數的記憶體位置所儲存的數值,即使是指標也不例外。 一個常見錯誤:int *a;*a = 12;聲名一指標變數,後面那條語句把12儲存在a所指向的記憶體位置。此處,我們聲名了一指標變數a但未對他初始化,所以無法預計12被儲存在什麼地方。這個操作是非常危險的 這是
Time of Update: 2018-12-05
Time of Update: 2018-12-05
Time of Update: 2018-12-05
開啟《Java 核心技術》第一卷的第4章:對象和類,第5章:繼承,第6章:介面和內部類。洋洋洒洒近150頁,幾乎集中了Java中物件導向文法的全部。不過憑藉我在C++中浸淫這麼多年的深厚功力,看起來還是相當輕鬆的:)這句話無疑是吹牛了,學習C++久了,我想人應該變得越來越謙虛才對。不過我還是提倡在枯燥的學習中多給自己一點自吹自擂的驕傲吧:)簡單的封裝:
Time of Update: 2018-12-05
基礎知識:引用和指標看起來很不一樣(包括定義,賦值和使用),但是從本質上說它們又是類似的,無論是指標還是引用都可以間接的指向一個變數,也可以說,指標和引用引入和一個間接層.在C++中,只有指標和引用才能夠支援多態,這並不是偶然的.讓我們首先看看引用的文法,不需要一上來就是一堆標準引用,只需要一小段精心設計的代碼就可以了 int m = 10; int n = 20; int *p = NULL; //指標的定義 p = &m; //指標的賦值 p =
Time of Update: 2018-12-05
先看一行代碼: int x[] = {1, 3, 5};這裡聲明x為有3個int元素的數組,在C語言中存在大量這樣的代碼,這太司空見慣了,似乎沒有什麼可好奇的東西存在,那麼在C++中呢?嗯,C++必須相容C語言中的這種小把戲,說得再直白些:C++中為了相容C,對某些特殊的資料類型存在一種特殊的初始化方式,那就是直接用{}來初始化,而這種特殊的資料類型就稱之為Aggregate(有人翻譯為彙總體,見<<Imperfect