當前位置:編程學習大全網 - 圖片素材 - Const是什麽意思

Const是什麽意思

const

基本詞義

n. 常數;常量;結構;構造;康銅;銅鎳合金;建築;建築物

在C語言中

const修飾符可以把對象轉變成常數對象,什麽意思呢?

意思就就是說利用const進行修飾的變量的值在程序的任意位置將不能再被修改,就如同常數壹樣使用!

使用方法是:

const int a=1;//這裏定義了壹個int類型的const常數變量a;

但就於指針來說const仍然是起作用的,以下有兩點要十分註意,因為下面的兩個問題很容易混淆!

我們來看壹個如下的例子: //程序作者:管寧

//站點:www.cndev-lab.com

//所有稿件均有版權,如要轉載,請務必著名出處和作者

#include <iostream>

using namespace std;

void main(void)

{

const int a=10;

int b=20;

const int *pi;

pi=a;

cout <<*pi << "|" << a <<endl;

pi=b;

cout <<*pi << "|" <<b <<endl;

cin.get();

}

上面的代碼中最重要的壹句是 const int *pi

這句從右向座讀作:pi是壹個指向int類型的,被定義成const的對象的指針;

這樣的壹種聲明方式的作用是可以修改pi這個指針所指向的內存地址卻不能修改指向對象的值。

如果妳在代碼後加上*pi=10;這樣的賦值操作是不被允許編譯的!

好,看了上面的兩個例子妳對const有了壹個基本的認識了,那麽我們接下來看壹個很容易混淆的用法!

請看如下的代碼 //程序作者:管寧

//站點:www.cndev-lab.com

//所有稿件均有版權,如要轉載,請務必著名出處和作者

#include <iostream>

using namespace std;

void main(void)

{

int a=10;

const int *const pi=a;

cout <<*pi << "|" <<a <<endl;

cin.get();

}

上面的代碼中最重要的壹句是 const int *const pi

這句從右向座讀作:pi是壹個指向int類型對象的const指針;

這樣的壹種聲明方式的作用是妳既不可以修改pi所指向對象的內存地址也不能利用指針的解引用方式修改對象的值,也就是用*pi=10這樣的方式;

所以妳如果在最後加上*pi=20,想試圖通過這樣的方式修改對象a的值是不被允許編譯的!

所以結合上面的兩點所說,把代碼修改成如下形式後就可以必然在程序的任意的地方修改對象a的值或者是指針pi的地址了,下面的這種寫法常被用語涵數的形式參數,這樣可以保證對象不會在涵數內被改變值! //程序作者:管寧

//站點:www.cndev-lab.com

//所有稿件均有版權,如要轉載,請務必著名出處和作者

#include <iostream>

using namespace std;

void main(void)

{

const int a=10;//這句和上面不同,請註意!

const int *const pi=a;

cout <<*pi << "|" <<a <<endl;

cin.get();

}

  • 上一篇:csol裏的電鋸和龍炮哪個好,爆僵屍頭幾率哪個高,開6和沒開6的情況下做壹下對比
  • 下一篇:誰有張敬軒的和他的簡介
  • copyright 2024編程學習大全網