第 2 章 常量 變數和表示式

2021-09-21 22:24:48 字數 2129 閱讀 5312

《一》繼續hello world

深入了解c語言的注釋,注釋可以跨行,也可以穿插在程式中。注釋的定界符/*和*/,注釋需要注意兩點:注釋不能夠巢狀使用,如:/*test1 /* test2 */ test3 */,編譯器解釋時,只把/*test1 /*test 2*/看成注釋,後面的test3 */無法解釋錯誤。2.c語言中也可以用//來注釋內容,兩個/斜線(slash)表示從這裡直到該行末尾的所有字元都屬於注釋,這種注釋不能跨行,也不能穿插在一行**中間。這是從c++借鑑的語法。

#include

/* 

* comment1

* main: generate some ****** output

*///這裡跨四行在注釋裡面的「*」號,沒有特殊含義,為了整體可觀賞性,這不是語法而是大家遵守的c**風格(coding style)之一。

int main(void)

解釋c標準規定的轉義字元具體含義

\' 單引號'(single quote或apostrophe) 

\" 雙引號" 

\? 問號?(question mark) 

\\ 反斜線\(backslash) 

\a 響鈴(alert或bell) 

\b 退格(backspace) 

\f 分頁符(form feed) 

\n 換行(line feed) 

\r 回車(carriage return) 

\t 水平製表符(horizontal tab) 

\v 垂直製表符(vertical tab)

"hello world.\n"這裡雙引號(double quote)引起來的一串字元稱為字串字面值(string literal),或稱為字串。printf列印出來的只是裡面的一串字元hello world,因此雙引號是字串字面值的界定符。而\n沒有輸出。因為\n這兩個字元合為一體表示換行(line feed),並不是字面意思。

如果在字串字面值中要表示單引號和問號,既可以使用轉義序列\'和\?,也可以直接用字元'和?,而要表示\或"則必須使用轉義序列,因為\字元表示轉義而不表示它的字面含義,"表示字串的界定符而不表示它的字面含義。可見轉義序列有兩個作用:一是把普通字元轉義成特殊字元,例如把字母n轉義成換行符;二是把特殊字元轉義成普通字元,例如\和"是特殊字元,轉義後取它的字面值。c語言規定了幾個控制字元,不能用鍵盤直接輸入,因此採用\加字母的轉義序列表示。字串字面值中的空格也算乙個字元,也會出現在輸出結果中,而程式中別處的空格和tab多乙個少乙個往往是無關緊要的,不會對編譯的結果產生任何影響。

#include

int        main         (void)

//程式其他空格及tab對程式無影響,但不是好的程式設計習慣

上面的程式也可以寫成:

#include

int main(void)

//不縮排不會影響程式的結果,乙個標頭檔案佔一行,main後面多幾個空格也沒影響,但是int和main之間至少要有乙個空格分隔開

《二》常量

常量(constant)是程式中最基本的元素,有字元(character)常量、整數(integer)常量、浮點數(floating point)常量和 列舉常量

#include

int main(void)

','"','?','\n','\'','?','\'','\\',34,3.14);

return 0;

}字元常量要用單引號括起來,如:'

else /*如果被整除,結果按原樣輸出*/

return 0;

}《六》字元型別與字元編碼

字元常量或字元型變數也可以當作整數參與運算,例如:

printf("%c\n",'c'+2);

執行結果輸出e

我們知道,符號在計算機內部也用數字表示,每個字元在計算機內部用乙個整數表示,稱為字元編碼(character encoding),目前最常用的是ascii碼(american standard code for information interchange,美國資訊交換標準碼),ascii碼中字元c是99,計算'c'+2這個表示式,應該按ascii碼把'c'當作整數值99,然後加2得到101,然後printf把98這個整數值當作ascii碼來解釋,要求輸出的是字元,然後列印出整數值101對於ascii碼的字元e。

1 6常量 變數 表示式

1.變數定義 變數要先宣告,再賦值 宣告 var a int 宣告 int 型別的變數 var b 10 int 宣告 int 型別陣列 var c int 宣告 int 型別的切片 var d int 宣告 int 型別的指標 賦值 a 10b 0 10 同時宣告與賦值 var a 10a 10a...

第二章 常量 變數 表示式

第二章 常量 變數 表示式 1 程式中的注釋可以跨行也可以穿插在程式之中,但不能巢狀使用 2 printf hello,world.n 雙引號是字串字面值的界定符,n是轉義字元 3 常量 字元常量,數字常量,列舉常量 1 字元常量用單引號,單引號只能括乙個字元,而不像雙引號括多個字元 2 字元常量可...

GO(5) 常量 變數 表示式

本文所涉及 路徑 常量 constant 永恆不變的量 例如 pi 一分鐘60秒 表示式 expression 將常量 變數 通過運算子連線起來的試子一 常量 package main import fmt 定義常量 const china 中國 const pi float64 3.14 定義多個...