const的使用CC++
生活随笔
收集整理的這篇文章主要介紹了
const的使用CC++
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?
?
?
#include <iostream> int main(void) { //const 定義常量---> const 意味只讀const int a; int const b; //第?個第?個意思?樣 代表?個常整形數const int *c; //第三個 c是?個指向常整形數的指針(所指向的內存數據不能被修改,但是本?可以修改)int * const d; //第四個 d 常指針(指針變量不能被修改,但是它所指向內存空間可以被修改)const int * const e ; //第五個 e?個指向常整形的常指針(指針和它所指向的內存空間,均不能被修改)return 0; }?
?
?
?
// c語言中,a的值可以被改變,通過指針。 // a的本質不是常量,而是一個只讀的變量。 #include <stdio.h> int main() { const int a = 10; int *p = (int*)&a;printf("a===>%d\n", a); *p = 11; printf("a===>%d\n", a); return 0; }// c++中,a的值不可被改變。 // a的本質是常量。在符號區。沒有地址。#include <iostream> using namespace std;int main() {cout << "Hello World!\n";const int a= 10;int* p = (int *)&a; //相當于對常量取地址*p = 20; //改變的是臨時開辟的temp變量cout << "a=" << a << endl; //輸出為10cout << "*p" << *p << endl; //輸出為20int array[a]={0}; //不會報錯}// c語言中,a的值可以被改變,通過指針。
// a的本質不是常量,而是一個只讀的變量。
// c++中,a的值不可被改變。
// a的本質是常量。在符號區。沒有地址。
如果對一個常量取地址,C++編譯器會臨時開辟一個空間temp,讓這個指針存放這個臨時空間的地址。
?
C++中的const常量類似于宏定義
const int c = 5; ≈? #define c 5
const常量:是由編譯器處理的,提供類型檢查和作用域檢查
宏定義:由預處理器處理,單純的文本替換。
先進行預處理,再編譯。
?
?
?
?
?
?
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的const的使用CC++的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 明明输出电压小于5V,单片机ADC测量到
- 下一篇: C++ 引用通过代码例子理解