1樓:匿名使用者
c++11? 如果是的話,編譯的時候需要加上 -std=c++11 才可以
c語言定義常量為什麼不建議用#define
2樓:匿名使用者
c語言的常量就bai是使用#define定義的。你是說duc++吧?zhic++的常量推薦使用const 定義,因為#define只是dao單純的字元專替換,無法檢查資料型別,屬const定義常量需指明資料型別,利於編譯器進行型別檢查。
3樓:匿名使用者
1、那是因bai為對於#define定義,編譯du器會存放在一zhi個記憶區dao域,這個記憶區域相當於我專們稱為巨集
屬為了不把有需要的裝進這個區域,我們只把有必要的,特殊的放進去2、當用#deifne定義的量是不能更改的,這樣就沒法迴圈使用了。
4樓:匿名使用者
這個,看常量型別,如果程式中大量使用且以後可能要經常改變這個常量的值,還是用#define比較方便,否則的話就沒有必要了!
5樓:知識哥哥
樓上的哥們 你用什麼定義的常量可以賦值呢?
6樓:匿名使用者
函式中不能再被重新賦值!
c語言中const有什麼用途
7樓:天雲一號
const修飾的資料型別是指常型別,常型別的變數或物件的值是不能被更新的。
const關鍵字的作用主要有以下幾點:
(1)可以定義const常量,具有不可變性。 例如:
const int max=100; int array[max];
(2)便於進行型別檢查,使編譯器對處理內容有更多瞭解,消除了一些隱患。例如: void f(const int i) 編譯器就會知道i是一個常量,不允許修改;
(3)可以避免意義模糊的數字出現,同樣可以很方便地進行引數的調整和修改。
(4)可以保護被修飾的東西,防止意外的修改,增強程式的健壯性。 還是上面的例子,如果在函式體內修改了i,編譯器就會報錯; 例如:
void f(const int i)
(5) 為函式過載提供了一個參考。
class a //一個函式
void f(int i) const //上一個函式的過載 ......
}; (6) 可以節省空間,避免不必要的記憶體分配。 例如:
#define pi 3.14159 //常量巨集
const doulbe pi=3.14159; //此時並未將pi放入rom中 ......
double i=pi; //此時為pi分配記憶體,以後不再分配!
double i=pi; //編譯期間進行巨集替換,分配記憶體
double j=pi; //沒有記憶體分配
double j=pi; //再進行巨集替換,又一次分配記憶體!
const定義常量從彙編的角度來看,只是給出了對應的記憶體地址,而不是象#define一樣給出的是立即數,所以,const定義的常量在程式執行過程中只有一份拷貝,而#define定義的常量在記憶體中有若干個拷貝。
(7) 提高了效率。 編譯器通常不為普通const常量分配儲存空間,而是將它們儲存在符號表中,這使得它成為一個編譯期間的常量,沒有了儲存與讀記憶體的操作,使得它的效率也很高。
8樓:匿名使用者
(1)可以定義 const 常量
9樓:千鋒教育
const是一個c語言的關鍵字,它限定一個變數不允許被改變。使用const在一定程度上可以提高程式的安全性和可靠性。另外,在**別人**的時候,清晰理解const所起的作用,對理解對方的程式也有一些幫助。
另外const在其他程式語言中也有出現,如c++、php5、c#.net、hc08 c。
(1)可以定義const常量,具有不可變性。
例如:const int max=100; max++會產生錯誤;
(2)便於進行型別檢查,使編譯器對處理內容有更多瞭解,消除了一些隱患。
例如: void f(const int i) 編譯器就會知道i是一個常量,不允許修改;
(3)可以避免意義模糊的數字出現,同樣可以很方便地進行引數的調整和修改。 同巨集定義一樣,可以做到不變則已,一變都變!
如(1)中,如果想修改max的內容,只需要:const int max=you want;即可!
(4)可以保護被修飾的東西,防止意外的修改,增強程式的健壯性。 還是上面的例子,如果在函式體內修改了i,編譯器就會報錯;
例如: void f(const int i)
10樓:匿名使用者
const是一個關鍵字,用它在c或c++中可以定義一個常量,特點是這個常量不可以在程式中被修改,一但被程式意外修改編譯器就會報錯。
c語言定義變數如:int const a;與const int a;有什麼區別?
11樓:匿名使用者
baiint const *a 和const int *a 沒有區別,都是du
一個zhi指向一個int常量的指標,這個指標本身dao以後可以重賦值指向別的int常量。
而 int *const a; 表示a是一個指標常量,初始化的時候必須固定指向一個int變數,之後就不能再指向別的地方了。
#include
int main()
12樓:匿名使用者
在定義變來量的時候是沒有說明區自別的;例bai如:const int a; int const a;但是定義此類變數時du,一般zhi
放在前面!
const int *a和dao int * const a這個區別就很多了,第一個是保證指標所指的資料不能被修改,第二個是指標不能被修改
這配置如何,這配置如何
配置有問題 p4 506用915的主機板就行了,用945是浪費,945是支援雙核的主機板 顯示卡不好,應該換x1300核心的顯示卡 建議 p4 506 915 或者 pd805 945鍵盤滑鼠不好 微軟極動鯊加belkin鍵盤,超爽 不知道你做什麼用,既然是945的板子,而且是ddr2的記憶體,為什...
這配置怎樣!有比這更好的
lga2011的cpu配上x99主機板,記憶體插槽8個插滿,單條8g可以總共64g記憶體 顯示卡4塊titan組sli 風冷貓頭鷹或者利民,最好水冷。水冷的話,全套ek或koolance水冷頭 d5水泵,全套bp接頭ssd方面,840 evo是tlc快閃記憶體,換850 pro 512g。容量不夠的...
我這主機板能用這顯示卡和CPU嗎,我這主機板能用這顯示卡和CPU嗎
我這主機板能用amd a8 5600k?答 a8 5600k不能使用在當前主機板上,其道理就是主機板和處理器定義標準不一,主機板會把處理器當成肥皂,而處理器會把主機板當搓衣板。玩笑而已。我這主機板能用這gtx680顯示卡?答 可以使用這個顯示卡,但是其意義完全就是幾千萬的跑車上了鄉村土路,很遺憾你的...