iOS入門(十三)巨集

2021-07-04 12:06:34 字數 1468 閱讀 6080

巨集  

預編譯時進行替換 ,讓程式易於修改。

乙個完全的替換過程  

#define  

ios 99  

ios替換99  

#define  

ios  

99;  

「ios」替換「99;」

使用場景  

: ui座標,網路介面,關鍵字串

條件編譯  

按不同的條件,編譯不同的** ,有三種形式。

#ifdef   識別符號  

如果識別符號被#define編譯過,編譯**段1 ,否則

**段1  

編譯**段二 

#else 

**段2 

#endif 

#ifndef 識別符號  

**段1  

如果識別符號沒被#define編譯過,編譯**

#else  

**段2

段1 ,否則編譯**段二  

#endif  

#if  常量表示式

#else   **段1

#endif  **段2

const 限定乙個變數不能被修改  

const int *p = &a   p 的內容不可以改

const * int  p = &a  

p不可以改

int const *p = &a  

p 的內容不可以改

int const * 

const p= &a  都不可以改

static 存放在全域性區 

// int arr[10] = ;

// for ( int i = 0 ;  i < 10 ;  i ++ )

// printf( "\n" ) ;

// int r = arc4random()%9;

// swap(&arr[10-1] ,&arr[r] ) ;

// r = arc4random()%(10-1-1) ;

// swap(&arr[10-1-1] , &arr[r]) ;

// r = arc4random() % (10-1-2) ;

// swap(&arr[10-1-2] , &arr[r]) ;

// for ( int i = 0 ;  i < 10-1-1 ;  i ++ )

// for ( int i = 0 ;  i < 10 ;  i ++ )

// printf( "\n" ) ;

定義乙個巨集,求三個數的最大值 

#define max1(a ,b , c )  ((a > b ? a : b ) > c ? (a > b ? a : b ) : c )

定義乙個巨集,來實現乙個整數奇偶比特位的交換。

#define  *****(a)   (((a<<1)&(0xaaaaaaaa))+((a >>1) &( 0x55555555)))

ios 巨集定義

這個不是ios 應該算是c裡面的 巨集定義巨集定義是c提供的三種預處理功能的其中一種,這三種預處理包括 巨集定義 檔案包含 條件編譯。1 編輯本段引數 不帶引數 巨集定義又稱為巨集代換 巨集替換,簡稱 巨集 格式 define識別符號字串 其中的識別符號就是所謂的符號常量,也稱為 巨集名 預處理 預...

Flask 入門(十三)

上文提到的blueprint和厲害吧?可是有個缺點,就是,還不夠框架,因為乙個功能不可能就乙個檔案啊?多檔案怎麼解決?還和上文專案架構一樣 1.新建兩個目錄,admin,function 2.admin目錄下新建三個python檔案 init py,super.py,user.py 3.functi...

pandas入門 十三

另一種常用於統計建模或機器學習的轉換方式是 將分類變數轉換為 啞變數 或 指標矩陣 dataframe的某一列中含有k個不同的值,則可以派生出乙個k列矩陣或 dataframe 其值全為1和0 pandas有乙個get dummies函式可以實現該功能。使用之前的乙個dataframe例子 給指標d...