判斷,數組,字符串和指針知識點

數值比較是所有判斷的本質

toupper(),頭文件ctype,將字母轉換爲大寫的標準庫函數

在case中創建一個變量時,需要用大括號{}把case的部分括起來。


在要執行的語句之前接連寫出各個case標籤,就可以爲多種不同的case採取相同的動作如:

case 'a':case 'e':case 'i':case 'o' :case 'u':

cout<<"漂亮!”;


myLabel:cout <<"myLabel branch has been activated"<<endl;給該語句創造一個標籤

goto myLabel  轉移到標籤中,用於從多種循環中跳出


基於範圍的for循環

double temperatures[]={65.5,68.0,75.0,77.5,76.4,73.8,80.1};

for(double t:temperatures)

{

      sum+=t;

      ++count;

}


_countof()計算數組元素的個數,頭文件cstdlib。是microsoft擴展不是標準c++.也可以返回多維數組中某一行列元素個數

nullptr可以隱式轉換爲任何指針類型,但不能隱式轉換爲除Bool類型外的其他任何整數類型

char類型的指針其指針存儲的地址爲指向的字符串的首字符地址。但是流輸出操作看待指向char類型的指針類型的方式很特殊。

輸出操作以一種特殊的方式來看待這種類型的指針,即將其視爲字符串(即char數組),因此輸出字符串本身,而不是地址

sizeof操作符產生size_t類型的整數值,其中size_t是由標準庫定義的類型,很多標準庫函數會返回size_t類型的值,size_t類型是用typedef語句定義的,等價於一個基本類型,通常爲unsigned int。

const *ptr 常量指針,要求值不變。*prt const 指針常量,要求所指對象不變。

讓指針指向二維數組,需要如此:ptr=&beans[0][0],或者ptr=beans[0];不能ptr=beans;指針數組如此定義double (*ptr)[4]

當使用delete操作符拋棄之前分配的某些內存後,還應該總是將該指針重置爲nullptr;

可以使用變量來指定new分配的一維數組的維數,對二維或多維數組,僅限於用變量指定最左邊那一維,其他維必須爲常數。


for(auto t:temperatures)                                                for(auto &t:temperatures)

{                                                                                      {

   sum+=t;++count                                                                  ....}

}//不可以使用它修改元素,因爲t沒有引用數組元素            這樣引用就可以修改


int x{5};int &&rExpr{2*x+3};用&&來指定一個rvalue引用,是一個臨時值。

strlen()顯示字符串長度,不包括結尾的空字符。strnlen爲其安全版本,第二個參數爲_countof(str),指定緩衝區長度。

strcat_s 連接兩個以空字符結尾的字符串

strcpy 將字符串從源位置複製到目標位置。第一個參數指向目標位置,第二個爲源位置

strcmp比較通過參數指定的兩個以空字符結尾的字符串。

strspn搜索字符串中不包含在給定集合中的第一個字符,並返回該字符索引

strstr返回一個指針,指向第一個參數中第二個參數指定的子字符串的位置

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