程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> C++和c語言裡面的const有什麼區別

C++和c語言裡面的const有什麼區別

編輯:關於C語言

眾所周知;在C語言裡面用const;是可以修改的;

//C語言裡面可以通過指針修改  
int  main()  
{  
//可以這麼說在C語言中a是一個只讀的常量。按照理論我們不好修改//  
const int a=10;
printf("%x",&a);//c語言裡面的  常量a是可以去地址的。  
int *p=null;  
p=(int *)&a;     //但是可以通過地址修改  
*p=11;  
printf("修改之後%d",a);  
}

這裡面的a是可以修改的;

但是看下面的 c++裡面的

而且在c++裡面,是可以這樣子定義的。

//c++編譯器在編譯期間就把他放到符號表裡面  
//根據上面得到a是一個真正的常量。  
int const a = 10;  
      
int  const b = 11;  
//在編譯的時候就把長度給定下來了  
//  array [10+11]//裡面肯定是個常量;c++編譯的時候已經固定長度  
//所以這樣子也可以的,但是在c語言裡面不可以  
int array[a + b] = { 0 };

如果小弟有解釋不合理的話,可以留言評論,因為小弟也是新人;

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved