奶头挺立呻吟高潮av全片,成人试看120秒体验区,性欧美极品v,A片高潮抽搐揉捏奶头视频

C語言

C語言聲明學習之初級篇

時間:2025-05-29 20:57:46 C語言 我要投稿
  • 相關推薦

C語言聲明學習之初級篇

  C語言為我們定義了四種基本數據類型:整型,浮點型,指針以及聚合類型(數組和結構體等),在此基礎上,我們就可以聲明變量。我們平時經常說定義一個某種類型的變量,其實這樣說不確切,應該說是聲明變量。

C語言聲明學習之初級篇

  變量聲明的基本形式是:

  說明符(一個或多個) 聲明表達式列表

  比如說:int a, b, c, d;

  C語言中對指針的聲明比較有代表性,我們來看一下:

  比如聲明一個指向int型的指針a:int *a;

  這個語句表示表達式*a產生的結果類型是int,而我們又知道*操作符執行的是間接訪問操作,所以可以推斷a肯定是一個指向int的指針。

  C語言在本質上是一種自由形式的語言,它給了程序員很大的空間,我們同樣可以這樣寫:int* a,這個聲明與int *a時一個意思,而且似乎更為清楚,a被聲明為類型為int*的指針(實則不然),這會誘導我們這樣聲明三個指向int型的指針:

  int* a, b, c;

  也許你會很自然的以為這條語句把三個變量a、b、c都聲明為指向整型的指針,但是事實上我們被它的形式愚弄了,星號實際上是表達式*a的一部分,只對這個標識符有用,a是一個指針,但是b和c都只是普通的整型而已,要聲明三指針,這樣寫是可以的:

  int *a, *b, *c;

  從這個簡單的例子我們可以看出C語言的聲明規則多么具有迷惑性,呵呵,這也是C語言飽受批*的地方之一,但這決定與語言本身的設計哲學,我們無法改變,要想用好C語言,我們必須掌握它的語法規則。

  我們再看一個例子:

  int fun();

  我們都知道它把f聲明為一個函數,它的返回值是一個整數。

  如果這樣寫:

  int *fun();

  要想推斷出它的含義,我們必須知道*fun()是如何求值的。首先執行的是函數調用操作符(),因為它的優先級高于間接訪問操作符*,所以fun是一個函數,它的返回值類型是一個指向整型的指針。

  再看一個更為有趣的聲明:

  int (*fun)();

  這個聲明有兩對括號,每對括號的含義不同。第二對括號是函數調用操作符,但是第一對只起到聚組的作用。它導致間接訪問在函數調用之前進行,使fun是一個函數指針,它所指向的函數返回一個整型值。

  那么現在這個聲明應該很容易分析出來了

  int *(*fun)();

  fun還是一個函數指針,只是所指向的函數返回的是一個整型指針。

  先寫到這里,對C語言的聲明之旅才剛剛開始,下回我們將在中級篇里討論更有趣的話題!

【C語言聲明學習之初級篇】相關文章:

C語言聲明學習之中級篇01-11

C語言聲明學習之高級篇12-22

C語言聲明的語法04-26

C語言函數的聲明以及函數原型04-20

學習C語言的方法05-23

如何學習c語言05-07

C語言入門學習04-08

怎么學習C語言02-23

C語言入門之指針用法06-24

主站蜘蛛池模板: 上思县| 昌邑市| 老河口市| 祁连县| 溧水县| 隆化县| 宁南县| 桑植县| 漾濞| 上虞市| 斗六市| 抚顺市| 金门县| 改则县| 娄烦县| 石城县| 垦利县| 奈曼旗| 宣恩县| 水富县| 金堂县| 堆龙德庆县| 突泉县| 玉环县| 龙江县| 望都县| 永春县| 乌兰浩特市| 成武县| 南溪县| 怀集县| 古蔺县| 永州市| 方城县| 历史| 手游| 三明市| 竹山县| 石棉县| 昌吉市| 上犹县|