當前位置:編程學習大全網 - 編程語言 - C語言中所有的代碼及其代表的意思,有誰知道?

C語言中所有的代碼及其代表的意思,有誰知道?

這個問題問的太。。。。了,給妳找了個操作符(operator)用於操作數據。操作符進行計算、檢查等式、進行賦值、操作變量和進行其它更奇怪的工作。C++中有許多操作符,這裏不想列出全部,只列出最常用的操作符,如下表所示。表1.2常用C++操作符操作符說明舉例

算術運算符

+ 加 x=y+z;

- 減 x=y-z;

* 乘 x=y*z;

/ 除 x=y/z;

賦值運算符

= 賦值 x=10;

+= 賦值與和 x+=10;(等於x=x+10;)

-= 賦值與減 x-=10;

*= 賦值與乘 x*=10;

\= 賦值與除 x\=10;

&= 賦值位與 x&=0x02;

|= 賦值位或 x|=0x02;

邏輯操作符

&& 邏輯與 if(x && 0xFF) {...}

|| 邏輯或 if(x || 0xFF) {...}

等式操作符

== 等於 if(x == 10) {...}

!= 不等於 if(x != 10) {...}

< 小於 if(x < 10) {...}

> 大於 if(x > 10) {...}

<= 小於或等於 if(x <= 10) {...}

>= 大於或等於 if(x >= 10) {...}

壹元操作符

* 間接操作符 int x=*y;

& 地址操作符 int* x=&y;

~ 位非 x &=~0x02;

! 邏輯非 if(!valid) {...}

++ 遞增操作符 x++(等於x=x+1;)

-- 遞減操作符 x--;

類和結構操作符

:: 範圍解析 MyClass :: SomeFunction();

-> 間接成員 MyClass-> SomeFunction();

· 直接成員 MyClass . SomeFunction();

可以看出,這個清單長了些,沒法壹下子記住。使用C++時,妳會慢慢熟悉這些操作符的。必須指出,遞增操作符既可用作前遞增(++x),也可用作後遞增(x++)。前遞增操作符告訴編譯器先遞增再使用變量,而後遞增操作符則讓編譯器先使用變量值再遞增。例如下列代碼:

int x = 10;

cout << "x = " << x++ << end1;

cout << "x = " << x << end1;

cout << "x = " x << end1;

cout << "x = " << ++x << end1;

輸出結果如下:

x=10

x=11

x=12

x=12

遞減操作符也是這樣,這裏不想將這些內容講得太深,但讀者可以耐心閱讀下去,正如彭茲對奧古斯特所說,“奧古,耐心點,羅馬不是壹天建成的”。說明 在C++中操作符可以過載(overload)。編程人員可以通過過載標準操作符讓它在特定類中進行特定運行。例如,可以在壹個類中過載遞增操作符,讓它將變量遞增10而不是遞增1。操作符過載是個高級C++技術,本書不準備詳細介紹。妳也許會發現,有些操作符使用了相同的符號。符號的意義隨情境的不同而不同。例如,星號(*)可以作為乘號、聲明指針或取消指針引用。這初看起來有點亂,事實上,C++編程老手有時也覺得有點亂。多實踐,妳會慢慢適應的。本書有許多例子介紹這些操作符。讀者不必死記每個操作符的作用,而可以在學習中通過程序和碼段去理解其作用。 C++中的函數

函數是與主程序分開的碼段。這些碼段在程序中需要進行特定動作時調用(執行)。例如,函數可能取兩個值並對其進行復雜的數學運算。然後返回結果,函數可能取壹個字串進行分析,然後返回分析字串的壹部分。新術語 函數(function)是與主程序分開的碼段,進行預定的壹個服務。函數是各種編程語言的重要部分,C++也不例外。最簡單的函數不帶參數,返回void(表示不返回任何東西),其它函數可能帶壹個或幾個參數並可能返回壹個值。函數名規則與變量名相同。圖1.5顯示了函數的構成部分。新術語 參數(parameter)是傳遞給函數的值,用於改變操作或指示操作程度。

返回類型 函數名 參數表

↓ ↓ ↓

int SomeFunction(int x, int y){

函數體→int z = (x * y); return z; ↑返回語句

}

圖1.5函數的構成部分使用函數前,要先進行聲明。函數聲明或原型(prototype)告訴編譯器函數所取的參數個數、每個參數的數據類型和函數返回值的數據類型。清單1.4列示了這個概念。新術語 原型(prototype)是函數外觀的聲明或其定義的說明。

清單1.4Muttiply.cpp

1: #include <iostream.h>

2: #include <conio.h>

3: #pragma hdrstop

4:

5: int multiply(int,int)

6: void showResult(int);

7:

8:int main(int argc,char **argv);

9:{

10: int x,y,result;

11: cout << end1 << "Enter the first value:";

12: cin >> x;

13: cout << "Enter the second value: ";

14: cin >> y;

15: result=multiply(x,y);

16: showResult(result);

17: cout << end1 << end1 << "Press any key to continue...";

18: getch();

19: return 0

20: }

21:

22: int multiply(int x,int y)

23: {

24:return x * y;

25: }

26:

27: void showResult(int res)

28: {

29:cout << "The result is: " << res <<end1;

30: }

這個程序的11到14行用標準輸入流cin向用戶取兩個數字,第15行調用multiply()函數將兩個數相乘,第16行調用showResult()函數顯示相乘的結果。註意主程序前面第5和第6行multiply()和showResult()函數的原型聲明。原型中只列出了返回類型、函數名和函數參數的數據類型。這是函數聲明的最基本要求。函數原型中還可以包含用於建檔函數功能的變量名。例如,multiply()函數的函數聲明可以寫成如下:int multiply(int firstNumber,int secondNumber);這裏函數multiply()的作用很明顯,但代碼既可通過說明也可通過代碼本身建檔。註意清單1.4中函數multiply()的定義(22到25行)在主函數定義碼段(8到20行)之外。函數定義中包含實際的函數體。這裏的函數體是最基本的,因為函數只是將函數的兩個參數相乘並返回結果。清單1.4中函數multiply()可以用多種方法調用,可以傳遞變量、直接數或其它函數調用的結果:

result = multiply(2,5);//passing literal values

result = multiply(x,y); //passing variables

showResult(multiply(x,y));

//return value used as a

//parameter for another function

multiply(x,y);//return value ignored

註意 最後壹例中沒有使用返回值。本例中調用函數multiply()而不用返回值沒什麽道理,但C++編程中經常忽略返回值。有許多函數是先進行特定動作再返回壹個數值,表示函數調用的狀態。有時返回值與程序無關,可以忽略不計。如果將返回值忽略,則只是放棄這個值,而不會有別的危害。例如,前面的樣本程序中忽略了getch()函數的返回值(返回所按鍵的ASCII值)。函數可以調用其它函數,甚至可以調用自己,這種調用稱為遞歸(recursion)。這在C++編程中是個較復雜的問題,這裏先不介紹。新術語 遞歸(recursion)就是函數調用自己的過程。

  • 上一篇:美國留學八大專業和院校
  • 下一篇:計算機編程什麽合適?
  • copyright 2024編程學習大全網