原创 sizeof和strlen(2)

strlen(char*)函數求的是字符串的實際長度,它求得方法是從開始到遇到第一個'\0',如果你只定義沒有給它賦初值,這個結果是不定的,它會從aa首地址一直找下去,直到遇到'\0'停止。    char aa[10];cout<<st

原创 淺拷貝和深拷貝具體詳解

當用一個已經初始化了的自定義類類型對象去初始化另一個新構造的對象的時候,拷貝構造函數就會被自動調用,也就是說,當類的對象需要拷貝時,拷貝構造函數將會被調用。以下情況都會調用拷貝構造函數:(1)一個對象以值傳遞的方式傳入函數體(2)一個對象

原创 scanf gets

scanf( )函數和gets( )函數都可用於輸入字符串,但在功能上有區別。若想從鍵盤上輸入字符串"hi hello",則應該使用__gets__函數。 gets可以接收空格;而scanf遇到空格、回車和Tab鍵都會認爲輸入結束,所有它

原创 無類型與無類型指針

無類型,又爲抽象類型:沒有對應的實體,不能直接定義變量,但可以定義指針。 無類型指針:成爲泛型指針,只要是地址都可以存放,無法對內存進行解釋。                      (1)失去指針指向的功能;             

原创 C語言中變量的存儲方式和生存期

在C語言的一個源文件中從變量的作用域的角度來觀察,變量可分爲全局變量和局部變量(外部變量)    1、局部變量分量種,一種是函數內部定義的變量,它只能在本函數內使用,此函數外不能使用。另一種是在函數的複合語句(如{}包含的程序塊)中定義變

原创 靜態變量,非靜態變量

靜態變量: 靜態變量的類型關鍵字是static。 靜態變量當然是屬於靜態存儲方式,但是屬於靜態存儲方式的量不一定就是靜態變量, 例如外部變量雖屬於靜態存儲方式,但不一定是靜態變量,必須由 static加以定義後才能成爲靜態外部變量,或稱靜

原创 inline的用法

(一)inline函數(摘自C++ Primer的第三版)       在函數聲明或定義中函數返回類型前加上關鍵字inline即把min()指定爲內聯。       inline int min(int first, int secend

原创 StrToInt 和 IntToStr

Delphi編程中的 StrToInt 和 IntToStr 是什麼意思? 這是兩個類型轉換函數: StrToInt :是指將字符型數據轉換爲數值型數據,當然要是數字型的字符,主要是用於數學計算,比如有字符型變量sum='15',要計算

原创 apk反編譯

學習和開發Android應用有一段時間了,今天寫一篇博客總結一下Android的apk文件反編譯。我們知道,Android應用開發完成之後,我們最終都會將應用打包成一個apk文件,然後讓用戶通過手機或者平板電腦下載下來進行安裝。正常情況下

原创 指針與數組

1.指針操作數組快於下標操作數組 2.數組的空間分配.如int a[10];——會在空間分配出40個相鄰的內存單元來(10*4)。 注意事項: a、數組不可以進行++ar運算;也不可以ar=NULL;//數組名退化成指針後,不可以++

原创 C++筆記(4)

1.通過引用的一些瞭解,得到以下結論:    結論一:    引用必須初始化;初始化的值一定是能取地址的。 int main(int argc,char *argv[]) { int &b=a;//&必須和變量名連接,此處是引用

原创 C++筆記(6)

1.相關數據結構成員方法的調用class Stack { public: Stack() { cout << this << endl; cout << "Stack()" <<

原创 C++筆記(3)

1.C/C++編譯器默認的類型轉換:     //1. unsigned int a=1; int b=-1;//int b——>unsigned int b=一個很大的數 char c=a>b?'a':'b'; printf("%c\

原创 sizeof和strlen

Sizeof與Strlen的區別與聯繫: 1.sizeof操作符的結果類型是size_t,它在頭文件中typedef爲unsigned int類型。 該類型保證能容納實現所建立的最大對象的字節大小。 2.sizeof是算符,strlen

原创 C++筆記(5)

1.構造函數和析構函數: 構造函數和析構函數的名字必須和類名一樣,不能隨便起,析構函數的名字前加上~。          如class MyTest{MyTest();//構造函數     ~M有Test();//析構函數} 構造函數