聲明與定義的區別

1、概念原理函數

  • 變量定義:用於爲變量分配存儲空間,還可爲變量指定初始值。程序中,變量有且僅有一個定義。spa

  • 變量聲明:用於向程序代表變量的類型和名字。blog

  • 定義也是聲明-----定義也是聲明:當定義變量時咱們聲明瞭它的類型和名字。索引

  • [注意] 內存

  • 變量在使用前就要被定義;文檔

  • 在一個程序中,變量只能定義一次,卻能夠聲明屢次。編譯器

  • 定義分配存儲空間,而聲明不會。編譯

  • 辨別:class

  • int i = 2;                       //聲明,也是定義,並初始化 
  • int i ;                            //聲明,也是定義,未初始化
  • extern int i;                //聲明但不是定義,該變量定義在函數外部(文檔外部)
  • extern int i = 10;       //定義(不經常使用)

一、聲明:告訴編譯器變量的類型 在哪裏 或者 函數的特徵(返回值 參數類型 個數)變量

/********************************* 包含頭文件 *********************************/
/*************************** 宏定義(define) ***********************************/
/********************* 類型聲明定義(typede) ***********************************/
/****************************** 全局變量聲明 **********************************/
/****************************** 全局函數聲明 **********************************/

這些都是廣義上的聲明,只是起旁白者,索引的做用,可屢次進行聲明,通常放在.h文件中


二、定義:告訴編譯器  創建變量和函數,運行是在內存中分配相應的存儲空間

/********************************* 包含頭文件 *********************************//****************** 全局變量定義(外部引入g_) ********************************//************************** 文檔變量定義(s_) ********************************//**************************** 文檔函數聲明(s_) ********************************//**************************** 文檔函數實現(s_) ********************************//******************************** 全局函數實現 ********************************//******************************** 函數描述 **************************************函 數 名: ddd*功 能: *參 數: *返 回 值: *創 建 者: jinb*建立日期: 2019-04-01*修 改: ********************************************************************************/

相關文章
相關標籤/搜索