c++中三目運算子可以當左值
(a < b ? a : b )=30
;//返回乙個最小數 並且給最小數賦值成30
const的基本用法
int
main()
int func1
(const
)初級理解:const是定義常量==》const意味著唯讀
含義://第乙個第二個意思一樣 代表乙個常整形數
//第三個 c是乙個指向常整形數的指標(所指向的記憶體資料不能被修改,但是本身可以修改)
//第四個 d 常指標(指標變數不能被修改,但是它所指向記憶體空間可以被修改)
//第五個 e乙個指向常整形的常指標(指標和它所指向的記憶體空間,均不能被修改)
const 和define的不同之處
define 預處理, const在編譯預處理階段處理
**:
#include
using
namespace std;
struct teacher
;//指標所指向的記憶體空間不能被修改
intoperateteacher01
(const teacher *pt)
intoperateteacher02
(teacher *
const pt)
intoperateteacher03
(const teacher *
const pt)
void
main81()
void
main82()
void
main83()
//const 和define的不同之處
//define 預處理, const在編譯預處理階段處理
#define d 20
void
main84()
//const常量是由編譯器處理的,提供型別檢查和作用域檢查
void
fun1()
void
fun2()
intmain()
const好處
//合理的利用const,
//1指標做函式引數,可以有效的提高**可讀性,減少bug;
//2清楚的分清引數的輸入和輸出特性
int setteacher_err( const teacher *p)
const修改形參的時候,在利用形參不能修改指標所向的記憶體空間
1. c語言中的const變數
c語言中const變數是唯讀變數,有自己的儲存空間
2. c++中的const常量
可能分配儲存空間,也可能不分配儲存空間
當const常量為全域性,並且需要在其它檔案中使用
當使用&操作符取const常量的位址
3. const物件必須進行初始化
4. 若要共享,加個extern
extern const int bufsize;
5. 有int &a = 1(err) & const int &a = 10(ok)
6.const與define的異同
c++中的const修飾的,是乙個真正的常量,而不是c中變數(唯讀)。在const修飾的常量編譯期間,就已經確定下來了。
對比加深
c++中的const常量類似於巨集定義
const int c = 5; ≈ #define c 5
c++中的const常量與巨集定義不同
const常量是由編譯器處理的,提供型別檢查和作用域檢查
巨集定義由預處理器處理,單純的文字替換
C語言 const基本用法
const 修飾 int a 10 下面const位置雖然不同,但都是修飾 代表指標所指向的內容不能被改 const int p a const修飾 p 指標指向的內容 不能直接被修改 intconst p a p 30 內容改變,就會報錯 p 20 可以改指向const 修飾變數 const修飾 ...
C 基礎之const基礎用法
前世 下列 for 迴圈語句有兩個問題,兩個都和使用 512 作為迴圈上界有關。for int index 0 index 512 index 第乙個問題是程式的可讀性。比較 index 與 512 有什麼意思呢?迴圈在做什麼呢?也就是說 512 作用何在?第二個問題是程式的可維護性。假設這個程式非...
const基本用法
const定義常變數後,該變數沒有寫許可權,只有讀許可權 const用於定義常變數時,要進行初始化 例如 const int a 10 合法 而const int a 非法 資料型別對於const而言是透明的 例如 const int a 10 等價於 int const a 10 const in...