如需轉載請標明出處:http://blog.csdn.net/itas109
字符集合是構成程序正文的基本元素。
如C++的字符集合由以下字符構成:
字母字符:A~Z,a~z
數字字符:0~9
特殊字符:! # % ^ & * _(下劃線) + = - ~< >/ \ ‘ “ ; . , : ? ( ) [ ] { } |
詞法記號(token)是最小的詞法單元。在C++中詞法記號(token)分為關鍵字、標識符、文字、操作符(運算符)、分隔符和空白符。
如
int a = 1;
分解為(不包括空白符)
詞法記號(token) | 類別 |
---|---|
int | 關鍵字 |
a | 標識符 |
= | 賦值操作符 |
1 | 數字 |
; | 語句結束分隔符 |
語言預先聲明的記號,如bool if class
等
標識符是開發者定義的記號,用于命名程序正文中的一些實體,如變量名、函數名、類名等。C++中標識符由字符、數字和下劃線組成,必須以字母或下劃線開頭,且不能為關鍵字。
文字文字是程序中直接使用符號表示的數據,包括數字、字符、字符串和布爾文字,如1 'a' "abc" true
等
操作符是用于實現各種運算的符號,如+ - * /
等
分隔符用于分隔各個詞法記號(token)或程序正文,如() {} , : ;
等
程序編譯時在詞法分析階段程序正文會分解為詞法記號(token)和空白。 空白符是空格、制表符(TAB鍵產生的字符)、垂直制表符、換行符、回車符和注釋的總稱。
2. 數據類型程序語言的數據類型分為基本數據類型和自定義數據類型。基本數據類型是編譯系統內置的。
2.1 基本數據類型如C++中的基本數據類型
bool
char
signed char
unsigned char
short
unsigned short
int
unsigned int
long
unsigned long
float
double
2.2 常量
整型常量整數常量:二進制(01)、八進制(0-7)、十進制(0-9)、十六進制(0-9a-fA-F)
實型常量實數有兩種:一般形式和指數形式。
一般形式:1.2
指數形式:0.12E-2
單引號括起來的一個字符,如’a’ ‘?’ ‘\n’
字符串常量"abcd"
布爾常量true和false
2.3 變量變量是值可以變量的量。
變量聲明語句:
數據類型 變量名1, 變量名2, ..., 變量名n;
如
int a,b,c,d;
char c='a'; // 定義變量并賦初值
2.4 符號常量符號常量是命名的常量。使用符號常量可以提高代碼的可讀性,
常量聲明語句:
const 數據類型 變量名 = 常量;
如
const double PI = 3.1415926;
3. 操作符(運算符)和表達式表達式是程序中計算求值的基本單位。
表達式可以理解為計算公式,由操作符(運算符,如+ - * /) 、操作數(運算量,如常量、變量等)和括號組成。如x+y
、1+2*3
等。
單目運算符(一元運算符):只需要一個操作數的運算符,如 +(正號) -(負號)
二目運算符(二元運算符):需要兩個操作數的運算符,如 +(加號) -(減號)
C++中的操作符(運算符)
3.1 算數運算符和算數表達式C++中算數運算符包括基本算數運算符和自增自減運算符。由算數運算符、操作數和括號組成的表達式成為算數表達式。
基本算數運算符包括+(正號或加) -(負號或減) *(乘) /(除) %(取余)
自增自減運算符包括++(自增) --(自減)。根據位置不同可細分為前置自增、后置自增、前置自減和后置自減。
3.2 賦值運算符和賦值表達式賦值運算符:
=
+=
-=
*=
/=
%=<<=
>>=
&=
|=
^=
帶有賦值運算符的表達式成為賦值表達式。
=(等號)為最基本的賦值運算符。
a=1 表達式值為1
a=b=1 表達式值為1,a,b的值為5
a=(b=1)+(c=2) 表達式值為3,a為3,b為1,c為2
3.3 逗號運算符和逗號表達式C++中逗號也是運算符
如
a=1*2,a*3; 等價于 a=1*2; a=a*3; 表達式值為6
3.4 邏輯運算符和邏輯表達式C++的邏輯運算符包括關系運算符和邏輯運算符。
關系運算符:<(小于)<=(小于或等于)>(大于) >=(大于或等于)==(等于) !=(不等于)
邏輯運算符:!(非) &&(與) ||(或)
如
a >1 關系運算符
!a 邏輯運算符
3.5 條件運算符和條件表達式C++中唯一的三元運算符為條件運算符"?"。
如
isOK ? "1" : "0"
3.6 位運算符C++中的位運算符:
& 按位與
| 按位或
^ 按位異或
~ 按位取反<< 左移
>>右移
4. 語句程序執行的操作采用語句表達。 常見操作包括聲明變量、賦值、調用方法、循環訪問集合,以及根據給定條件分支到一個或另一個代碼塊。
C++的語句包括
4.1 聲明語句 Declaration Statement聲明語句引入新的變量或常量。 變量聲明可以選擇為變量賦值。 在常量聲明中必須賦值。
// 變量聲明語句 Variable declaration statements
double radius = 2;
// 常量聲明語句 Constant declaration statement
const double PI = 3.1415926;
4.2 表達式語句 Expression Statement用于計算值的表達式語句必須在變量中存儲該值。
// 表達式語句賦值 Expression statement (assignment)
area = 3.14 * (radius * radius);
// 表達式語句(函數調用) Expression statement (method invocation).
printf("");
// 表達式語句(new對象) Expression statement (new object creation).
CTest* pTest = new CTest();
4.3 選擇語句 Selection Statement選擇語句用于根據一個或多個指定條件分支到不同的代碼段。關鍵字 if switch
bool isOK = true;
if(isOK)
printf("isOK: %d\n", isOK);
else
printf("isOK: %d\n", isOK);
int mode=1;
switch (mode)
{
case 1:
printf("mode: %d\n", mode);
break;
default:
printf("mode: %d\n", mode);
break;
}
}
4.4 迭代語句 Iteration Statement迭代語句用于遍歷集合(如數組),或重復執行同一組語句直到滿足指定的條件。 關鍵字 do while for
for (int i = 0; i< 3; i++)
{
printf("i: %d\n", i);
}
int n = 0;
do
{
printf("n: %d\n", n);
n++;
} while (n< 5);
int n = 0;
while (n< 5)
{
printf("n: %d\n", n);
n++;
}
4.5 跳轉語句 Jump Statement跳轉語句將控制轉移給另一代碼段。 關鍵字 break continue goto return
for (int i = 0; i< 3; i++)
{
if(i == 0)
continue;
if(i == 1)
return;
if(i == 1)
goto EXIT;
if(i == 3)
break;
}
EXIT:
return;
4.6 帶標簽的語句 Labeled Statement可以為語句指定一個標簽,然后使用 goto關鍵字跳轉到該帶標簽的語句。
goto EXIT;
EXIT:
return;
4.7 異常處理語句 Exception Handling Statement異常處理語句用于從運行時發生的異常情況正常恢復。關鍵字 throw try-catch try-finally try-catch-finally
#includedouble test(int x, int y) {
if (y == 0) {
throw "divide by zero";
}
return (x / y);
}
int main()
{
try {
test(1, 0);
}
catch (const char* e) {
printf("error: %s\n", e);
}
}
4.8 復合語句 Compound Statement復合語句:一對大括號內含有多個語句。
復合語句有自己的作用域,離開作用域后,其中的變量會被銷毀。
{
int a=1;
printf("a: %d\n", a);
}
4.9 空語句 Empty Statement空語句只含一個分號。 不執行任何操作,可以在需要語句但不需要執行任何操作的地方使用。
while (true)
; // 空語句
注意:C++中沒有賦值語句和函數調用語句,賦值和函數調用功能是通過表達式來實現的。
5. 自定義數據類型C++中自定義數據類型包括枚舉類型(enum)、結構體類型(struct)、聯合體類型(union)、數組類型([])、類類型(class)等。
License
License under CC BY-NC-ND 4.0: 署名-非商業使用-禁止演繹
如需轉載請標明出處:http://blog.csdn.net/itas109
Reference:
NULL
你是否還在尋找穩定的海外服務器提供商?創新互聯www.cdcxhl.cn海外機房具備T級流量清洗系統配攻擊溯源,準確流量調度確保服務器高可用性,企業級服務器適合批量采購,新人活動首月15元起,快前往官網查看詳情吧
分享題目:C++語言程序設計-創新互聯
轉載來于:http://vcdvsql.cn/article38/dcposp.html
成都網站建設公司_創新互聯,為您提供服務器托管、ChatGPT、品牌網站設計、網站設計、Google、網站維護
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯