C语言限定符
C語言限定符
使用關(guān)鍵字限定變量:const、volatile、restric
限定符用于限制變量的使用方式。
1. 不能改變初始化以后的 const 變量。編譯器不會(huì)假設(shè)?
2. volatile變量不被某些外部代理(如,一個(gè)硬件更新)改變。
3. restrict? 限定的指針是訪問它所指向內(nèi)存的唯一方式(在特定作用域中)。
1. const int joy = 101;聲明創(chuàng)建了變量joy,它的值被初始化為101。
2. volatile unsigned int incoming;聲明創(chuàng)建了變量incoming,該變量在程序中兩次出現(xiàn)之間,其值可能會(huì)發(fā)生改變。
3. const int * ptr = &joy;聲明創(chuàng)建了指針ptr,該指針不能用來改變變量joy的值,但是它可以指向其他位置。
4. int * const ptr = &joy;聲明創(chuàng)建了指針ptr,不能改變?cè)撝羔樀闹?#xff0c;即ptr只能指向joy,但是可以用它來改變joy的值。
5. void simple (const char * s);聲明表明形式參數(shù)s被傳遞給simple()的值初始化后,simple()不能改變s指向的值。
6. void supple(int * const pi);與void supple(int pi[const]);等價(jià)。這兩個(gè)聲明都表明supple()函數(shù)不會(huì)改變形參pi。
7. void interleave(int * restrict p1, int * restrict p2, int n);聲明表明p1和p2是訪問它們所指向內(nèi)存的唯一方法,這意味著這兩個(gè)塊不能重疊。
摘自:CP6
總結(jié)
- 上一篇: C语言基本类型和存储类别
- 下一篇: Makefile(直接可以使用)