c 變數的宣告和定義

2022-06-10 01:30:12 字數 1118 閱讀 2175

1.變數的定義:變數的定義用於為變數分配儲存空間,還可以為變數指定初始值。在乙個程式中,變數有且僅有乙個定義。

2.變數的宣告:用於向程式表明變數的型別和名字。程式中變數可以宣告多次,但只能定義一次

3.定義和宣告的區別

一般的情況下我們常常這樣敘述,把分配記憶體空間的宣告稱之為"定義",把不需要分配記憶體空間稱的宣告之為"宣告"。

extern int a; //宣告

int b; //定義

int b=1; //初始化

b=2; //賦值

//另外在定義的時候也可以初始化,也就是我們常用的寫法

int c=3;

4.為什麼需要區分宣告和定義:

c++程式通常由許多檔案組成。為了讓多個檔案訪問相同的變數,c++區分了宣告和定義。任何在多個檔案中使用的變數都需要既有定義又有宣告。在這種情況下,在乙個檔案中定義了變數,在其他使用改變了的檔案中則只能包含變數的宣告(不能再包含定義,因為變數只能定義一次)。

5.真正用的時候 這種需要被別的檔案用的變數,必須在本檔案中定義好,比如在檔案1中定義int i=0;然後才可以再別的檔案中使用,使用方式是:在類體的外部使用extern int i;這樣在這個類中就可以使用該外部變數了,再次強調必須先定義好,才能再別的地方通過extern宣告使用。例:

#include #include "myclass.h"

int test_i;//定義 等同於 extern test_i =0;

myclass::myclass(qwidget *parent, qt::wflags flags)

: qmainwindow(parent, flags)

myclass::~myclass()

#include "yourclass.h"

//#include "myclass.h"

extern int test_i;//在此類類體外部宣告,在此類中即可使用

yourclass::yourclass(void)

yourclass::~yourclass(void)

C 變數(四) 變數的宣告和定義

c 程式通常是由很多個file組成。為了讓每個file能夠使用同乙個變數,c 特意把變數的宣告和定義區別開來。變數的定義,是指為變數分配記憶體,或者有時也為其設定乙個初始值的操作。在程式中,同乙個變數只能定義一次。extern int i declares but not define i int ...

C中變數的宣告和定義

變數定義就是告訴編譯器在何處建立變數的儲存,以及如何建立變數的儲存。變數定義指定乙個資料型別,幷包含了該型別的乙個或多個變數的列表。變數宣告向編譯器保證變數以指定的型別和名稱存在,這樣編譯器在不需要知道變數完整細節的情況下也能繼續進一步的編譯。變數宣告只在編譯時有它的意義,在程式連線時編譯器需要實際...

C 變數宣告和定義的關係

c 支援分離式編譯 separare compilation 機制,該機制允許將程式分割成若干個檔案,進行獨立編譯。為了達到分離式編譯的目的,c 將宣告和定義進行了區分。宣告式的名字為程式所知。定義負責建立於名字關聯的實體。定義除了和宣告一樣規定了變數的型別和名字,還同時申請了儲存空間,也可能為變數...