中文字幕一区二区人妻电影,亚洲av无码一区二区乱子伦as ,亚洲精品无码永久在线观看,亚洲成aⅴ人片久青草影院按摩,亚洲黑人巨大videos

C 基本語(yǔ)法

我們已經(jīng)看過(guò) C 程序的基本結(jié)構(gòu),這將有助于我們理解 C 語(yǔ)言的其他基本的構(gòu)建塊。

C 的令牌(Token)

C 程序由各種令牌組成,令牌可以是關(guān)鍵字、標(biāo)識(shí)符、常量、字符串值,或者是一個(gè)符號(hào)。例如,下面的 C 語(yǔ)句包括五個(gè)令牌:

printf("Hello, World! 
");

這五個(gè)令牌分別是:

printf
(
"Hello, World! 
"
)
;

分號(hào) ;

在 C 程序中,分號(hào)是語(yǔ)句結(jié)束符。也就是說(shuō),每個(gè)語(yǔ)句必須以分號(hào)結(jié)束。它表明一個(gè)邏輯實(shí)體的結(jié)束。

例如,下面是兩個(gè)不同的語(yǔ)句:

printf("Hello, World! 
");
return 0;

注釋

C 語(yǔ)言有兩種注釋方式:

// 單行注釋

// 開(kāi)始的單行注釋?zhuān)@種注釋可以單獨(dú)占一行。

/* 單行注釋 */
/* 
 多行注釋
 多行注釋
 多行注釋
 */

/* */ 這種格式的注釋可以單行或多行。

您不能在注釋內(nèi)嵌套注釋?zhuān)⑨屢膊荒艹霈F(xiàn)在字符串或字符值中。

標(biāo)識(shí)符

C 標(biāo)識(shí)符是用來(lái)標(biāo)識(shí)變量、函數(shù),或任何其他用戶(hù)自定義項(xiàng)目的名稱(chēng)。一個(gè)標(biāo)識(shí)符以字母 A-Z 或 a-z 或下劃線(xiàn) _ 開(kāi)始,后跟零個(gè)或多個(gè)字母、下劃線(xiàn)和數(shù)字(0-9)。

C 標(biāo)識(shí)符內(nèi)不允許出現(xiàn)標(biāo)點(diǎn)字符,比如 @、$ 和 %。C 是區(qū)分大小寫(xiě)的編程語(yǔ)言。因此,在 C 中,Manpowermanpower 是兩個(gè)不同的標(biāo)識(shí)符。下面列出幾個(gè)有效的標(biāo)識(shí)符:

mohd       zara    abc   move_name  a_123
myname50   _temp   j     a23b9      retVal

關(guān)鍵字

下表列出了 C 中的保留字。這些保留字不能作為常量名、變量名或其他標(biāo)識(shí)符名稱(chēng)。

關(guān)鍵字 說(shuō)明
auto 聲明自動(dòng)變量
break 跳出當(dāng)前循環(huán)
case 開(kāi)關(guān)語(yǔ)句分支
char聲明字符型變量或函數(shù)返回值類(lèi)型
const 定義常量,如果一個(gè)變量被 const 修飾,那么它的值就不能再被改變
continue結(jié)束當(dāng)前循環(huán),開(kāi)始下一輪循環(huán)
default開(kāi)關(guān)語(yǔ)句中的"其它"分支
do 循環(huán)語(yǔ)句的循環(huán)體
double 聲明雙精度浮點(diǎn)型變量或函數(shù)返回值類(lèi)型
else條件語(yǔ)句否定分支(與 if 連用)
enum聲明枚舉類(lèi)型
extern聲明變量或函數(shù)是在其它文件或本文件的其他位置定義
float聲明浮點(diǎn)型變量或函數(shù)返回值類(lèi)型
for一種循環(huán)語(yǔ)句
goto無(wú)條件跳轉(zhuǎn)語(yǔ)句
if條件語(yǔ)句
int 聲明整型變量或函數(shù)
long 聲明長(zhǎng)整型變量或函數(shù)返回值類(lèi)型
register聲明寄存器變量
return 子程序返回語(yǔ)句(可以帶參數(shù),也可不帶參數(shù))
short聲明短整型變量或函數(shù)
signed聲明有符號(hào)類(lèi)型變量或函數(shù)
sizeof計(jì)算數(shù)據(jù)類(lèi)型或變量長(zhǎng)度(即所占字節(jié)數(shù))
static 聲明靜態(tài)變量
struct聲明結(jié)構(gòu)體類(lèi)型
switch 用于開(kāi)關(guān)語(yǔ)句
typedef用以給數(shù)據(jù)類(lèi)型取別名
unsigned聲明無(wú)符號(hào)類(lèi)型變量或函數(shù)
union聲明共用體類(lèi)型
void聲明函數(shù)無(wú)返回值或無(wú)參數(shù),聲明無(wú)類(lèi)型指針
volatile說(shuō)明變量在程序執(zhí)行中可被隱含地改變
while 循環(huán)語(yǔ)句的循環(huán)條件

C99 新增關(guān)鍵字

_Bool _Complex _Imaginary inline restrict

C11 新增關(guān)鍵字

_Alignas _Alignof _Atomic _Generic _Noreturn
_Static_assert _Thread_local ? ? ?

C 中的空格

只包含空格的行,被稱(chēng)為空白行,可能帶有注釋?zhuān)珻 編譯器會(huì)完全忽略它。

在 C 中,空格用于描述空白符、制表符、換行符和注釋??崭穹指粽Z(yǔ)句的各個(gè)部分,讓編譯器能識(shí)別語(yǔ)句中的某個(gè)元素(比如 int)在哪里結(jié)束,下一個(gè)元素在哪里開(kāi)始。因此,在下面的語(yǔ)句中:

int age;

在這里,int 和 age 之間必須至少有一個(gè)空格字符(通常是一個(gè)空白符),這樣編譯器才能夠區(qū)分它們。另一方面,在下面的語(yǔ)句中:

fruit = apples + oranges;   // 獲取水果的總數(shù)

fruit 和 =,或者 = 和 apples 之間的空格字符不是必需的,但是為了增強(qiáng)可讀性,您可以根據(jù)需要適當(dāng)增加一些空格。