indef ifndef if有關問題的解釋

2021-08-21 01:42:19 字數 781 閱讀 8132

(1)#ifdef識別符號     (

2)#ifndef 識別符號   (

3)#if 表示式

程式段1                     程式段

1                      

程式段1

#else                         #else                           #else

程式段2           

程式段2                      

程式段2

#endif                       #endif                        #endif

識別符號:如#define max 1巨集定義的max識別符號,

表示式:如min == 1。

question1

#ifdef識別符號:若識別符號被定義,則編譯程式段1,否則編譯程式段;

#ifndef識別符號:若識別符號未被定義,則編譯程式段1,否則編譯程式段。兩者實質是一樣的。

question2

有人會問:不用條件編譯命令而直接用if語句也能達到要求,用條件編譯命令有什麼好處呢?的確,此問題完全可以不用條件編譯處理,但那樣做,目標程式長(因為所有語句都編譯),而採用條件編譯,可以減少被編譯的語句,從而減少目標的長度。當條件編譯段比較多時,目標程式長度可以大大減少。

有關Server Mappath解釋

先看圖 1,首先在本機e盤下面建立red資料夾,夾子內繼續建立conn.asp檔案,檔案內容如下 主要除錯三種路徑最後顯示的結果。2,在red資料夾下面建立資料夾database,該夾子內部存放cnbruce.mdb檔案。所以現在可以很肯定的知道資料庫檔案的絕對路徑是 e red database ...

有關於快取

我們使用快取的目的主要有如下幾點 1 減少資料庫查詢次數,降低資料庫負載。2 縮短php執行路徑,降低web前端負載。3 減少webserver的請求數量,降低web前端負載。第一項 比較接近底層,主要做細粒度資料快取,比如快取乙個資料物件,一行記錄等。只有當物件中的屬性或記錄中的字段值發生變化後使...

有關sql注入

大家存在5點誤區 1 sql注入比較難防,需要替換select,delete等一打字元 其實對於字元型替換再多都沒有替換單引號為兩個單引號來的好!對於數字型替換再多都沒有用,一定要型別轉換。2 忽略dropdownlist傳來的東西 其實是不對的,一切客戶端的東西都是不可信任的,select下拉框也...