黑馬程式設計師 iso入門基礎學習 C語言day7

2021-06-25 14:15:39 字數 1411 閱讀 4602

---------------------- ios培訓.期待與您交流! ----------------------

一、預處理指令:在將**翻譯成01之前執行的命令

1.預處理指令都是以#開頭

2.預處理指令位置可以隨便寫

3.預處理指令的作用域,從編寫指令的那一行到檔案結束

4.預處理指令包括3種:

4.1 巨集定義:   只是將**替換,並不會計算

無引數的巨集定義:#define 巨集名(大寫) 值:將巨集名替換成值

帶引數的巨集定義:#define 巨集名(引數) (引數)   文字替換

注意:帶引數的巨集定義要將引數和結果都加上括號

#undef 巨集名   結束巨集定義

4.2條件編譯:有條件的編譯**,一般參與判斷的是巨集

#if#elif

#else

#endif  如果endif不加,else後面的**全部不被編譯,包括大括號

#if defined a  等價於  #ifdef a    如果定義了巨集a

#if !denfined a 等價於 #ifndef a   如果沒有定義巨集a

4.3檔案包含

#include 《系統自帶》 "自定義"

防止重複的包含複製:

#ifndef   ***_h     巨集名為標頭檔案的檔名

#define  ***_h

函式宣告

。。。。

。。。。

#endif

二、typedef :給型別取新的型別名稱,一般用於比較複雜的型別名,比如結構體,列舉型別,指標型別

typedef struct person

sperson;   定義了乙個結構體型別person,並且取新名稱

sperson。

typedef enum ***

m***;    定義了乙個列舉型別***,取新名稱為m***

三、extern和static:

針對函式:

extern定義和宣告外部函式:預設都是外部函式,所以可以省略,同乙個專案,不同檔案的函式不可重名

static定義和宣告內部函式:不能直接呼叫,不能省略。不同檔案的內部函式可以重名

針對變數:

全域性變數:

1.外部變數:全域性變數預設都是外部變數,不同檔案重複定義乙個重名的變數都是同乙個變數。

2.內部變數:只能本檔案中訪問,不同檔案的同名變數,不是同乙個變數

extern:宣告乙個外部變數,不可省略

static:定義乙個內部變數

區域性變數:

static修飾區域性變數唯一的作用就是改變區域性變數的生命週期,直到程式結束才會被釋放。但是不會改變區域性變數的作用域。如果函式內部的區域性變數,那麼呼叫這個函式n次,所有呼叫的函式都共享這個變數。

四、遞迴:函式自己呼叫自己,必須有乙個明確的返回值

黑馬程式設計師 iso入門基礎學習 C語言day5

ios培訓.期待與您交流!int p 定義了乙個指標變數p 只能儲存int型別的資料的位址 p a 將a的記憶體位址賦值給p p 10 根據指標p儲存的記憶體位址,訪問資料,賦值為10。相當於a 10。int p a ok int 相當於指標p的型別 p a no 如果要指向指標 int pp p ...

黑馬程式設計師 c 基礎

windows phone 7手機開發 net培訓 期待與您交流!變數 變數本身被用來儲存特定型別的資料,可以根據需要隨時改變變數中所儲存的資料值。變數具有名稱,型別和值。變數代表著一塊記憶體空間,我們可以通過變數名稱向記憶體存 取資料,有變數就不需要記憶複雜的記憶體位址。資料型別 變數名 命名規範...

黑馬程式設計師 學習C 基礎2

windows phone 7手機開發 net培訓 期待與您交流!從29號開始近3天以來的學習筆記 7月29號 1 for迴圈 格式 for 初始條件 判斷條件 用來改變條件 三個語句執行順序 第乙個 判斷一下 執行 裡邊的語句 在回過來執行i for 迴圈 三部分都可以省略 2 型別 轉換 格式 ...