1樓:劉文正粉絲
你是沒有明白常變數嗎?常變數你就可以理解為一個變數,但是它只能讀,不能寫.就是說
const int i = 1;
其中,不通過指標,不能修改i的值.所以它的用處和常量就一樣了.
2樓:匿名使用者
在c語言中,可以用一個識別符號來表示一個常量,稱之為符號常量。例如 #define price 30,這裡price 就是符號常量,使用符號常量的好處是含義清楚、能做到「改定義就可以改變對應常量的值」,即把30變成50,則對應price 的值也變成了50。
從使用的角度看,常變數具有符號常量的優點,而且使用更方便。它們的不同在於符號常量是不安全的,沒有型別檢查的,而常變數比較安全,其實常變數不是絕對修改不了,只是拒絕顯式的修改。但可以通過操作指標隱式修改。
3樓:使用氟
符號常量
其實就是巨集定義的常量,例如#define num 12常變數就是常量變數例如 const int num=12符號常量是不安全的,沒有型別檢查的,你可以看出來沒有型別,只是在編譯器階段替換**。
常變數型別安全,但是隻能賦值(初始化)一次,以後就不能修改了。
程式範圍:符號常量所有位置可以看見,常變數在宣告的作用範圍內是可見的。
這兩種語言因素都可以用符號來表示 例如 num 和 num
c語言中是如何定義常量的啊
4樓:劉世媛
我們在用c程式設計時有時需要定義不變的變數,即常量,有兩種方法。
例如:定義常量pi的兩種方式:
1. #define pi 3.1415926f;
2. const float pi 3.1415926f;
常量有整型常量、浮點型常量、字元型常量及字串常量。 『常量定義是指定義符號常量,用一個識別符號來代表一個常量,通過巨集定義預處理指令來實現。
格式:#define識別符號常量
由使用者命名的識別符號是符號常量名。作為符號常量名,一般大寫。一旦定義,在程式中凡是出現常量的地方均可用符號常量名來代替。
對使用了符號常量的程式在編譯前會以實際常量替代符號常量。
全域性變數和區域性變數的區別:
5樓:匿名使用者
#define count 60
這叫巨集定義,不叫常量
常量的定義:
const int count = 60;
形參指定型別,實參指定數值
6樓:天雲一號
c語言定義常量常用的方法有以下2種:
第一種:巨集定義
#define n 3 // 定義了一個常量為3的巨集n,在程式中n就代表3
第二種:給變數初始化賦值
int a = 2; // 定義了一個int型變數,並賦值為2,其實這是用變數來定義常量
注:定義常量還是用巨集定義的比較多。
7樓:匿名使用者
常量的定義:
#define count 60
這就定義了一個常量 count 它的值是一個常量60 在整個程式中不變
關於實際引數和,形式引數:
可以這樣通俗的去理解:
主調函式中的引數是實際引數,被調函式中的引數是形式引數,比如說:如下**段
被調函式:
int max(int a,int b)
主調函式:
main()
在北調函式max(int a,int b)中a,b是形式引數在主函式中max(a,b)中的a,b是實際引數;
8樓:匿名使用者
可以用預處理命令#indefine
和const靜態定義個數便是常量
形參就是函式定義時,所給的引數;而實參就是在main函式中呼叫時所使用的引數,兩者可以相同也可以不相同。
9樓:匿名使用者
實參在主調函式中,形參在被調函式中
當使用的是值傳遞方式時,實參值傳遞給形參,但是形參不把值傳回實參,即單向傳遞。
當使用地址傳遞時,實參地址傳遞給形參,形參把地址傳回實參,是雙向傳遞。
10樓:
#define
定義在全域性區
11樓:☆行雲流水
#define count 100
實參在主調函式中,形參在被調函式中
c語言裡符號常量和常變數有什麼區別?
12樓:楊塵一
符號常量與常變數的區別:符號常量不佔用記憶體空間,在預編譯時就全部由符版號常量的值替換了,而常變數佔用權記憶體空間,也有資料型別,但是此變數在存在期間是不能重新賦值的。
1、常變數a的定義如下:
const int a = 5;
2、符合常量pi的定義如下:
#define b=3.1;
13樓:四角瑪
符號常量 是編譯前有前處理器處理的
#define pi 3.1415926
#define 是一條預處理命令, 就是出現符號常量pi的地版方用後面的數字替換隻
權是簡單地替換
然後進入編譯器
而常變數由編譯器處理,分配記憶體空間,有資料型別,可以和變數一樣使用,但不可以改變值!
const float pi=3.14159;
c語言中,常變數與符號常量有什麼區別?
14樓:匿名使用者
啥叫符號變數。
是不是 const int a =1;這個叫常變數和 光禿禿的一個 2.或者'a' 這個叫符號變數?
你可以認為沒有區別,a 再怎麼說也是變數,在變數區。光禿禿的2,'a'在編譯之後進入常量區。
常量區是不可修改的。變數區是可修改的。雖然說這裡已經加了const關鍵字,那只是編譯器為了邏輯上的理解,要強行繞過去 還是可以的,光禿禿的2 是繞都繞不進去的,除非用更暴力的手段去修改。
你可以認為 一個是摧毀的門,根本進不去,另外一個是 鎖住的門,你強行開啟也是可以的。只是要你自己對你的行為負責
常變數和符號常量的區別
15樓:愛笑的天宇
符號常量:
在c語言中,可以用一個識別符號來表示一個常量,稱之為符號常量。
符號常量在使用之前必須先定義,其一般形式為:
#define 識別符號 常量
其中#define 也是一條預處理命令(預處理命令都以"#"開頭),稱為巨集定義命令,其功能是把該識別符號定義為其後的常量值。一經定義,以後在程式中所有出現該識別符號的地方均代之以該常量值。習慣上符號常量的識別符號用大寫字母,變數識別符號用小寫字母,以示區別。
例:#include
#define price 30
main()
使用符號常量的好處是:
含義清楚;
能做到「一改全改」。
常變數就是用const定義的變數,常變數的值是不能被改寫的,只能使用不能改寫,除非是用友原函式進行呼叫。其實相當於用#define定義的變數,不過在c++中用const定義。在c中一般用#define.
16樓:江湖馨手
在程式執行過程中,其值不能被改變的量稱為常量。
在物件名前使用const宣告常物件,但宣告時必須同時進行初始化,而且不能被更新。
例如定義類base的一個常物件a:
base const a(25,68);
用一個標示符代表一個常量的符號,稱為符號常量。
符合常量pi的定義如下:
const double pi=3.141592是用名字pi來代替數字3.141592
17樓:匿名使用者
常變數用const 來修飾其值在變數存在期間不能改變;符號常量就是用一個符號代替一個常量例如#define pi 3.1416,注意後面沒有分號!!
請問c語言中,常變數和符號常量的不同之處在哪?
18樓:寂寞的哥布林
eg{const a=3;
a=4; //出錯,常變數不允許被修改}
我想問個關於c語言的問題,為什麼有了常變數就可以不必多用符號常量,我感覺他倆差不多啊
19樓:匿名使用者
差別不少,這裡舉一個例子吧
比如有#define n 3
const int n=3;
有某個函式這樣定義的
void f(const int* a) ;
那麼可以 f(&n);但不能 f(&n)
C語言中,常變數與符號常量有什麼區別
符號常量與常變數的區別 符號常量不佔用記憶體空間,在預編譯時就全部由符號常量的值替換了,而常變數佔用記憶體空間,也有資料型別,但是此變數在存在期間是不能重新賦值的。1 常變數a的定義如下 const inta 5 2 符合常量pi的定義如下 define b 3.1 c語言裡符號常量和常變數有什麼區...
好來塢是不是在洛杉磯,好萊塢是不是就是在洛杉磯這座城市裡?
當然在洛杉磯,在洛杉磯的市郊!搞笑,人家只問在那裡,你複製貼上這麼多,可笑洛杉磯 好萊塢是不是就是在洛杉磯這座城市裡?好萊塢 hollywood 又稱荷里活,位於美國西海岸加利福尼亞州洛杉磯郊外,依山傍水,景色宜人。好萊塢 一詞往往直接用來指美國的電影工業,由於美國許多著名電影公司設立於此,故經常被...
在c語言中,在C語言中ch c A a 是什麼意思,其中ch和c是字元
在c語言中ch c a a 的意思是,是把表示大寫字母的變數c轉換為小寫字母的語句,使用前一般要先判斷一下的,如下 if c a c z ch c a a 因為當c b 時,c a 就等於1,然後1 a 就是 b 如果事先不檢測的話,當c不是大寫字母時作這樣的轉換是會無法理解的。在c語言中ch c ...