1樓:匿名使用者
1、如果const位於星號的左側,則const就是用來修飾指標所指向的變數,即指標指向為常量;如果const位於星號的右側,const就是修飾指標本身,即指標本身是常量。
2、因此,const int *a;和 int const *a;的情況相同,都是指標所指向的內容為常量(const放在變數宣告符的位置無關),這種情況下不允許對內容進行更改操作,如不能*a = 3 ; ,int *const a;為指標本身是常量,而指標所指向的內容不是常量,這種情況下不能對指標本身進行更改操作,如a++是錯誤的。
3、const int* const a;為指標本身和指向的內容均為常量。
2樓:
前兩個一樣,意思是指標指向的物件是const(指標本身的值可變,不是const),第三個是指標本身不可變const,(但他指向的物件可變,不是const)
3樓:
const int *a; 表示指標a指向的整數為只讀變數,不能改變,但可以改變指標a的值來改變a指向的內容。
int const *a;同上,一個意義。
int *const a;表示指標a為只讀變數,不能改變,既不能改變a指向的地址,但可以改變a的內容。
const定義要從右至左看,const int *a,既const (int *a),const修飾的是指標a指向的內容,int *const a;const修飾的是a,即指標。
c語言定義變數如:int const a;與const int a;有什麼區別?
4樓:匿名使用者
baiint const *a 和const int *a 沒有區別,都是du
一個zhi指向一個int常量的指標,這個指標本身dao以後可以重賦值指向別的int常量。
而 int *const a; 表示a是一個指標常量,初始化的時候必須固定指向一個int變數,之後就不能再指向別的地方了。
#include
int main()
5樓:匿名使用者
在定義變來量的時候是沒有說明區自別的;例bai如:const int a; int const a;但是定義此類變數時du,一般zhi
放在前面!
const int *a和dao int * const a這個區別就很多了,第一個是保證指標所指的資料不能被修改,第二個是指標不能被修改
const int a(){ } 和int a()const { } 有區別麼 有什麼區別 分別代表什麼
6樓:匿名使用者
int a()const 表示a()函式中,類的成員變數不能發生任何改變
const int a() 這屬於一種牽強的寫法吧,意思是返回值是一個整型 , 而且這個返回值是常量,有必要這樣寫嗎?(個人理解)
7樓:
const int a()
a的返回值是一個const int
int a() const
a返回int
a不會對引數進行修改;如果a是結構體或者類的成員,那麼也不會對結構體或類的成員變數進行修改
int const a 和const int a有什麼區別
8樓:宿雨厭厭
沒有區別。
修飾非指標時,沒有區別:都是宣告int常量a;修飾指標時,置於int前,表示指標只能指向常量,*a賦值非法,置於int後,表示指標常量,a賦值非法
cconst問題,C 中的const的用法
這樣解釋一下 int cc 5 int dd cc int ee cc int const aa dd aa 是 常指標,不允許 再指向別處,定義時初始化為 dd 的引用因為aa是常指標 所以 aa ee 會報錯 aa 1 允許 int cc 5 int dd cc int ee cc const ...
c 中const是怎麼使用的
用來修飾變數或函式 包括成員函式 及其引數 1 const修飾基本資料型別 2 const應用到函式中 3 const在類中的用法 4 const修飾類物件,定義常量物件 一 const修飾基本資料型別 1.const修飾一般常量及陣列 const int a 10 等價的書寫方式 int cons...
const在C語言中有哪些用法
寧心聽曲 const關鍵字至少有下列n個作用 1 欲阻止乙個變數被改變,可以使用const關鍵字。在定義該const變數時,通常需要對它進行初始化,因為以後就沒有機會再去改變它了 2 對指標來說,可以指定指標本身為const,也可以指定指標所指的資料為const,或二者同時指定為const 3 在乙...