溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

C語言中的const在怎么使用

發(fā)布時間:2022-04-02 11:16:45 來源:億速云 閱讀:147 作者:iii 欄目:編程語言

這篇文章主要介紹了C語言中的const在怎么使用的相關(guān)知識,內(nèi)容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇C語言中的const在怎么使用文章都會有所收獲,下面我們一起來看看吧。

const可以說一種常量的聲明的關(guān)鍵字,如const int a=2;變量a就是一個常變量,a的值不能被改變,這個改變是一定意義上的不能改變.而是說值的改變不能直接通過a這個符號來改變.但事實上,a的值是可能改變的.如下例子:

#include<stdio.h>  int main()  {  const int a=3;  int *p=(int*)&a;  *p=100;  printf("%d",a);  return 0;  }

這樣a的值就被改變了.

const也可以說一種只讀的關(guān)鍵字,如

int integerArray[10]={0};  const int* pointer=integerArray;

這里pointer是指向一個常變量的指針變量.pointer指向可能改變,但它所指向的變量的值就不能直接通過pointer來改變.如:

*(p+1)=2;

這是不可以的.但如果有另外一個數(shù)組integerArray1,p=integerArray1是可以有.還有指向的變量不可改變,這種不可改變是一定意義的改變.如下例子:

#include<stdio.h>  int main()  {   int array[10]={0};  const int *pointer=array;  int *pointer1=(int*)pointer;  pointer1[0]=1;  printf("%d",array[0]);  return 0;  }

以上例子說明了,不能直接通過pointer改變array,但可能間接通過pointer來改變array;

現(xiàn)在說一說有const聲明常指針,它的聲明不像聲明指向常量的指針形式.它的聲明形式為:int* const pointer; .常指針在編程的過程中它的指向不能改變.因此,常指針在聲明的時侯一定要給它賦初值.

否則,就不能直接給它賦值.但是,如果一定要給它賦上一定的值,是可以的.如下例子:

#include<stdio.h>  int main()  {  int a=2;  int* const p;  int **p1=(int**)&p;  *p1=&a;  printf("%d",*p);  return 0;  }

經(jīng)過上面的介紹,相信大家對指向常量的常指針的聲明也不難寫出吧.它的聲明形式:cont int* const p;它就不用作過多的介紹了,指向常量的常指針就是指向常量的指針與常指針的復(fù)合了.

關(guān)于“C語言中的const在怎么使用”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對“C語言中的const在怎么使用”知識都有一定的了解,大家如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI