亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? c.txt

?? 自已編的PSO(粒子群優化算法)的程序,可以在VC環境運行
?? TXT
?? 第 1 頁 / 共 5 頁
字號:
19.可以用#include指令包含類型名不是".h"的文件嗎?
    預處理程序將包含用#include指令指定的任意一個文件。例如,如果程序中有下面這樣一條語句,那么預處理程序就會包含macros.inc文件。
    #include <macros.inc>

    不過,最好不要用#include指令包含類型名不是".h"的文件,因為這樣不容易區分哪些文件是用于編譯預處理的。例如,修改或調試你的程序的人可能不知道查看macros.inc文件中的宏定義,而在類型名為".h"的文件中,他卻找不到在macros.inc文件中定義的宏。如果將macros.inc文件改名為macros.h,就可以避免發生這種問題。 
--------------------------------------------------------------------------------
 
--  作者:PrOve
--  發布時間:2005-4-6 13:12:42

--  
20.用enum關鍵字說明常量有什么好處?
    用enum關鍵字說明常量(即說明枚舉常量)有三點好處:
    (1)用enum關鍵字說明的常量由編譯程序自動生成,程序員不需要用手工對常量一一賦值。
    (2)用enum關鍵字說明常量使程序更清晰易讀,因為在定義enum常量的同時也定義了一個枚舉類型標識符。
    (3)在調試程序時通常可以檢查枚舉常量,這一點是非常有用的,尤其在不得不手工檢查頭文件中的常量值時。
    不過,用enum關鍵字說明常量比用#define指令說明常量要占用更多的內存,因為前者需要分配內存來存儲常量。
    以下是一個在檢測程序錯誤時使用的枚舉常量的例子:
    enum Error_Code
    {
        OUT_OF_MEMORY,
        INSUFFICIENT_DISK_SPACE,    
        LOGIC_ERROR,    
        FILE_NOT_FOUND    
    }  ; 

--------------------------------------------------------------------------------
 
--  作者:PrOve
--  發布時間:2005-4-6 13:13:18

--  
21.與用#define指令說明常量相比,用enum關鍵字說明常量有什么好處?
    與用#define指令說明常量(即說明標識符常量)相比,用enum關鍵字說明常量(即說明枚舉常量)有以下幾點好處:
    (1) 使程序更容易維護,因為枚舉常量是由編譯程序自動生成的,而標識符常量必須由程序員手工賦值。例如,你可以定義一組枚舉常量,作為程序中可能發生的錯誤的錯誤號,請看下例:
    enum Error_Code    
    {
       OUT_OF_MEMORY,    
       INSUFFICIENT_DISK_SPACE,    
       LOGIC_ERROR,
       FILE+NOT_FOUND
    }  ;   
    在上例中,OUT_OF_MEMORY等枚舉常量依次被編譯程序自動賦值為0,1,2和3。
    同樣,你也可以用#define指令說明類似的一組常量,請看下例:
    #define OUT_OF_MEMORY             0    
    #define INSUFFICIENT_DISK_SPACE    1
    #define LOGIC_ERROR                2
    #define FILE_NOT_FOUND             3
    上述兩例的結果是相同的。
    假設你要增加兩個新的常量,例如DRIVE_NOT_READY和CORRUPT_FILE。如果常量原來是用enum關鍵字說明的,你可以在原來的常量中的任意一個位置插入這兩個常量,因為編譯程序會自動賦給每一個枚舉常量一個唯一的值;如果常量原來是用#define指令說明的,你就不得不手工為新的常量賦值。在上面的例子中,你并不關心常量的實際值,而只關心常量的值是否唯一,因此,用enum關鍵字說明常量使程序更容易維護,并且能防止給不同的常量賦予相同的值。
    (2)使程序更易讀,這樣別人修改你的程序時就比較方便。請看下例:
    void copy_file(char*  source_file_name,  char *  dest_file_name)
    {    
        ......
        Error_Code,err;
        ......
        if(drive_ready()!=TRUE)
        err=DRIVE_NOT_READY;
        ......
    }    
    在上例中,從變量err的定義就可以看出;賦予err的值只能是枚舉類型Error_Code中的數值。因此,當另一個程序員想修改或增加上例的功能時,他只要檢查一下Error_Code的定義,就能知道賦給err的有效值都有哪些。
注意:將變量定義為枚舉類型后,并不能保證賦予該變量的值就是枚舉類型中的有效值。
    在上例中,編譯程序并不要求賦予err的值只能是Error—Code類型中的有效值,因此,程序員自己必須保證程序能實現這一點。
    相反,如果常量原來是用#define指令說明的,那么上例就可能如下所示:
    void copy_file(char *source *file,char *dest_file)
    {  
        ......  
        int err;
        ......
        if(drive_ready()!=TRUE)
            err=DRIVE_NOT_READY;
        ......
    }
    當另一個程序員想修改或增加上例的功能時,他就無法立即知道變量err的有效值都有哪些,他必須先檢查頭文件中的#defineDRIVE_NOT_READY語句,并且寄希望于所有相關的常量都在同一個頭文件中定義。
    (3)使程序調試起來更方便,因為某些標識符調試程序能打印枚舉常量的值。這一點在調試程序時是非常用的,因為如果你的程序在使用枚舉常量的一行語句中停住了,你就能馬上檢查出這個常量的值;反之,絕大多數調試程序無法打印標識符常量的值,因此你不得不在頭文件中手工檢查該常量的值。 
--------------------------------------------------------------------------------
 
--  作者:PrOve
--  發布時間:2005-4-6 13:13:47

--  
22.使用宏更好,還是使用函數更好?
    這取決于你的代碼是為哪種情況編寫的。宏與函數相比有一個明顯的優勢,即它比函數效率更高(并且更快),因為宏可以直接在源代碼中展開,而調用函數還需要額外的開銷。但是,宏一般比較小,無法處理大的、復雜的代碼結構,而函數可以。此外,宏需要逐行展開,因此宏每出現一次,宏的代碼就要復制一次,這樣你的程序就會變大,而使用函數不會使程序變大。
    一般來說,應該用宏去替換小的、可重復的代碼段,這樣可以使程序運行速度更快;當任務比較復雜,需要多行代碼才能實現時,或者要求程序越小越好時,就應該使用函數。 
--------------------------------------------------------------------------------
 
--  作者:PrOve
--  發布時間:2005-4-6 13:14:30

--  
23.#include <file>和#include“file”有什么不同?
    在C程序中包含文件有以下兩種方法:
    (1)用符號“<”和“>”將要包含的文件的文件名括起來。這種方法指示預處理程序到預定義的缺省路徑下尋找文件。預定義的缺省路徑通常是在INCLUDE環境變量中指定的,請看下例:    
    INCLUDE=C:\\COMPILER\\INCLUDE;S:\\SOURCE\\HEADERS;
    對于上述INCLUDE環境變量,如果用#include<file>語句包含文件,編譯程序將首先到C:\\COMPILER\\INCLUDE目錄下尋找文件;如果未找到,則到S:\\SOURCE\\HEADERS
  目錄下繼續尋找;如果還未找到,則到當前目錄下繼續尋找。    
    (2)用雙引號將要包含的文件的文件名括起來。這種方法指示預處理程序先到當前目錄下尋找文件,再到預定義的缺省路徑下尋找文件。    
    對于上例中的INCLUDE環境變量,如果用#include“file”語句包含文件,編譯程序將首先到當前目錄下尋找文件;如果未找到,則到C:\\COMPILER\\INCLUDE目錄下繼續尋找;如果還未找到,則到S:\\SOURCE\\HEADERS目錄下繼續尋找。
    #include<file>語句一般用來包含標準頭文件(例如stdio.h或stdlib.h),因為這些頭文件極少被修改,并且它們總是存放在編譯程序的標準包含文件目錄下。#include“file”語句一般用來包含非標準頭文件,因為這些頭文件一般存放在當前目錄下,你可以經常修改它們,并且要求編譯程序總是使用這些頭文件的最新版本。 
--------------------------------------------------------------------------------
 
--  作者:PrOve
--  發布時間:2005-4-6 13:15:07

--  
24.包含文件可以嵌套嗎?
    包含文件可以嵌套,但你應該避免多次包含同一個文件(見5.3)。
    過去,人們認為頭文件嵌套是一種不可取的編程方法,因為它增加了MAKE程序中的依賴跟蹤函數(dependencytrackingfunction)的工作負擔,從而降低了編譯速度。現在,通過引入預編譯頭文件(precompiledheaders,即所有頭文件和相關的依賴文件都以一種已被預編譯的狀態存儲起來)這樣一種技術,許多流行的編譯程序已經解決了上述問題。
    許多程序員都喜歡建立一個自己的頭文件,使其包含每個模塊所需的每個頭文件。這是一個頭文件。 
--------------------------------------------------------------------------------
 
--  作者:PrOve
--  發布時間:2005-4-6 13:17:15

--  
25.連接運算符“##”有什么作用?
    連接運算符“##”可以把兩個獨立的字符串連接成一個字符串。在C的宏中,經常要用到“##”運算符,請看下例:
    #include<stdio.h>
    #define SORT(X)  sort_function # # X
    void main(vOid);
    void main(vOid)
    {
        char *array;
        int  elements,element_size;.
        SORT(3) (array,elements,element_size);
    }
    在上例中,宏SORT利用“##”運算符把字符串sort_function和經參數x傳遞過來的字符串連接起來,這意味著語句
    SORT(3)(array,elemnts,element_size);
    將被預處理程序轉換為語句
    sort_function3(array,elements,element_size);
    從宏SORT的用法中你可以看出,如果在運行時才能確定要調用哪個函數,你可以利用“##”運算符動態地構造要調用的函數的名稱。 
--------------------------------------------------------------------------------
 
--  作者:絕望之星
--  發布時間:2005-4-7 12:56:48

--  
我頂!!! 
--------------------------------------------------------------------------------
 
--  作者:設計部唐成城
--  發布時間:2005-4-7 21:11:03

--  

好象太深奧了

--------------------------------------------------------------------------------
 
--  作者:PrOve
--  發布時間:2005-4-9 23:14:48

--  

別就光頂啊 幫著我擴充一下啊

--------------------------------------------------------------------------------
 
--  作者:PrOve
--  發布時間:2005-4-9 23:38:12

--  
26.怎樣取消一個已定義的宏?
    利用預處理指令#undef可以取消已定義的宏。許多程序員都喜歡按自己的風格定義一些常用的標識符,例如TRUE和FALSE。你可以在程序中檢查TRUE和FALSE是否已被定義,如果已被定義,就取消原來的定義,然后按自己的風格重新定義。請看下例:
     #ifdef TRUE    /* Check to see if TRUE has been defined yet */

    
#undef TRUE    /*If so,undefine it */
    #endif
    #define TRUE 1    /*Define TRUE the waywe want it denned */
    #ifdef FALSE       /*Check tO see ifFALSE has beendefined yet*/
    #undef FALSE       /*if so,undefine it */
    #endif
    #define FALSE !TRUE  /*Define FALSE the waywe want it defined*/
    #undef指令的另一個作用是避免標識符的重復定義。例如,如果刪去上例中的#undef語句,在編譯上例時就會產生重復定義同一個標識的警告;有了#undef語句,你就可以避開上述警告,并能保證有效地定義標識符。

--------------------------------------------------------------------------------
 
--  作者:PrOve
--  發布時間:2005-4-9 23:41:36

--  
27.串拷貝(strcpy)和內存拷貝(memcpy)有什么不同?它們適合于在哪種情況下使用?
    strcpy()函數只能拷貝字符串。strcpy()函數將源字符串的每個字節拷貝到目錄字符串中,當遇到字符串末尾的null字符(\\0)時,它會刪去該字符,并結束拷貝。
    memcpy()函數可以拷貝任意類型的數據。因為并不是所有的數據都以null字符結束,所以你要為memcpy()函數指定要拷貝的字節數。
      在拷貝字符串時,通常都使用strcpy()函數;在拷貝其它數據(例如結構)時,通常都使用memcpy()函數。
    以下是一個使用strcpy()函數和memcpy()函數的例子:

#include <stdio. h>
#include <string. h>
typedef struct cust-str {
    int id ;
    char last_name [20] ;
    char first_name[l5];
} CUSTREC;
void main (void);
void main (void)
{
    char * src_string = "This is the source string" ;
    char dest_string[50];
    CUSTREC src_cust;
    CUSTREC dest_cust;
    printf("Hello! I\'m going to copy src_string into dest_string!\\n");

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本黄色一区二区| 91色在线porny| 亚洲视频图片小说| 国产人成一区二区三区影院| 精品国产一区二区三区久久久蜜月| 色欧美片视频在线观看| 成人午夜免费视频| 麻豆精品视频在线| 看片网站欧美日韩| 国产在线视频精品一区| 久久99精品国产91久久来源| 国产伦精品一区二区三区免费迷| 蜜桃久久久久久| 久草这里只有精品视频| 精品一区二区综合| 另类小说图片综合网| 美女精品一区二区| 久久99精品国产麻豆不卡| 久久国产精品免费| 国产一区二区在线看| 国产精品一区二区久久精品爱涩| 国产老妇另类xxxxx| 成人在线视频一区| 色综合咪咪久久| 色综合久久久久久久| 欧美蜜桃一区二区三区| 日韩一区二区三区视频在线 | 国产午夜精品久久久久久免费视 | 精品亚洲aⅴ乱码一区二区三区| 极品瑜伽女神91| a在线播放不卡| 欧美日韩久久不卡| 久久精品亚洲国产奇米99| 国产精品丝袜91| 洋洋成人永久网站入口| 麻豆91免费观看| 国产黄色精品网站| 欧美日韩一区二区三区四区| 26uuuu精品一区二区| 亚洲欧洲一区二区三区| 亚洲成年人网站在线观看| 蜜桃视频在线观看一区二区| jlzzjlzz亚洲女人18| 欧美午夜免费电影| 久久精品日韩一区二区三区| 亚洲黄色av一区| 国产乱子伦视频一区二区三区 | 欧美丝袜自拍制服另类| 日韩色视频在线观看| 亚洲精品视频在线观看免费| 蜜臀va亚洲va欧美va天堂| 成人精品国产一区二区4080| 欧美久久一区二区| 国产精品美女一区二区在线观看| 日韩激情视频在线观看| 99国产欧美久久久精品| 欧美一卡2卡3卡4卡| 国产偷国产偷亚洲高清人白洁| 亚洲午夜久久久久久久久电影网 | 99在线视频精品| 亚洲精品在线电影| 亚洲一区二区欧美激情| 国产一区二区导航在线播放| 欧美肥妇free| 一区二区三区在线观看视频| 成人激情黄色小说| 久久婷婷久久一区二区三区| 麻豆成人综合网| 日韩免费看的电影| 偷拍一区二区三区四区| 一本色道**综合亚洲精品蜜桃冫| 国产精品久久久久久久久晋中| 国产一区二区三区免费观看| 精品剧情在线观看| 久久99久久久欧美国产| 日韩视频免费观看高清完整版在线观看 | 91精品国产欧美日韩| 亚洲成人福利片| 色94色欧美sute亚洲线路一ni | 亚洲一区二区欧美日韩| 极品美女销魂一区二区三区| 精品国产91洋老外米糕| 国产在线一区观看| 欧美国产97人人爽人人喊| 美女任你摸久久| 久久久精品一品道一区| 国产福利不卡视频| 中文幕一区二区三区久久蜜桃| 成人精品视频一区二区三区尤物| 国产日韩欧美麻豆| 成人国产精品免费观看| 亚洲欧美日韩国产手机在线 | 亚洲伊人色欲综合网| 欧美调教femdomvk| 蜜桃视频一区二区三区| 久久一日本道色综合| 国产一区二区精品久久99| 中文字幕巨乱亚洲| 色婷婷综合久久久久中文一区二区 | 久久久久久久久99精品| 国产福利91精品一区| 国产精品福利一区| 欧美在线影院一区二区| 日韩电影免费在线看| 欧美一二三区在线观看| 国内精品久久久久影院薰衣草| 中文字幕精品综合| 91福利视频久久久久| 精品一区二区三区蜜桃| 18欧美乱大交hd1984| 91精品久久久久久久91蜜桃| 国产成人啪免费观看软件| 亚洲美女视频在线| 91精品国产综合久久精品app| 国产呦精品一区二区三区网站| 亚洲免费观看在线视频| 日韩精品一区二区三区视频在线观看 | 国产欧美一区二区精品性色超碰 | 欧美最新大片在线看 | 国产日韩欧美亚洲| 欧美日韩一级黄| 成人午夜看片网址| 日韩精品视频网站| 国产精品水嫩水嫩| 日韩午夜小视频| 91在线视频网址| 免费在线观看日韩欧美| 亚洲视频香蕉人妖| 欧美大胆一级视频| 色综合久久天天| 国产一区二区三区| 青青草国产成人99久久| 亚洲视频免费在线观看| 久久久久久亚洲综合| 在线不卡中文字幕| 色综合久久66| 成人久久18免费网站麻豆 | 99久久婷婷国产综合精品| 免费一区二区视频| 亚洲国产精品久久人人爱| 国产精品免费视频网站| 久久久久久久久久久久电影 | 91网页版在线| 狠狠色丁香婷婷综合久久片| 亚洲制服丝袜一区| |精品福利一区二区三区| 国产日韩欧美一区二区三区乱码| 欧美一级日韩免费不卡| 91麻豆精品国产91久久久更新时间| 色哟哟一区二区在线观看| 国产成人a级片| 国产成人无遮挡在线视频| 韩国成人精品a∨在线观看| 日本sm残虐另类| 另类中文字幕网| 国产在线一区二区| 国产不卡在线一区| av不卡一区二区三区| 91麻豆成人久久精品二区三区| 在线一区二区视频| 欧美亚州韩日在线看免费版国语版| 91国内精品野花午夜精品| 精品视频一区三区九区| 欧美福利电影网| 精品国产乱码91久久久久久网站| 精品99一区二区三区| 久久久久久久久99精品| 国产精品视频看| 一级特黄大欧美久久久| 午夜精品久久久久久久99樱桃| 午夜av区久久| 日韩激情一二三区| 美女网站色91| 成人做爰69片免费看网站| 成人av片在线观看| 欧美色综合天天久久综合精品| 欧美日韩不卡视频| 精品国产a毛片| 亚洲免费在线视频| 日韩av一区二| 成人免费看视频| 欧美日韩在线不卡| 精品免费日韩av| 亚洲视频一二三| 美女一区二区久久| 99国产精品一区| 欧美二区三区的天堂| 国产亚洲精久久久久久| 一区二区久久久| 国产一区 二区| 欧美在线播放高清精品| 久久亚洲一级片| 亚洲精品免费在线播放| 精品一区二区三区不卡| 97久久超碰精品国产| 欧美精品一区二区在线观看| 亚洲一区二区精品久久av| 国产在线观看一区二区| 欧美精品视频www在线观看| 中文字幕 久热精品 视频在线|