int const *p 和 const int *p
时间:2010-05-28 来源:sunjiangang-ok
int const *p 和 const int *p是一样的。
int * const p和 * const int p是一样的。
const int * p 内容一定,地址不定
int * const p 内容不定,地址一定
1 #include <stdio.h>
2 int main()
3 {
4 int a = 8;
5 int * const q;
6 const int * p;
7
8 q++;
9 *q = 8;
10 *q = 9;
11 p = &a;
12 *p = 8;
13 *p = 9;
14 }
编译时,会在第9行出现错误,说明int *const q的定义中q的值是不能再变的,而q所指的内容是可以变的。
会在12和13行出现error,说明const *int p的定义中p的值是可以变的,而p所指的内容是不可以改变的。
int * const p和 * const int p是一样的。
const int * p 内容一定,地址不定
int * const p 内容不定,地址一定
1 #include <stdio.h>
2 int main()
3 {
4 int a = 8;
5 int * const q;
6 const int * p;
7
8 q++;
9 *q = 8;
10 *q = 9;
11 p = &a;
12 *p = 8;
13 *p = 9;
14 }
编译时,会在第9行出现错误,说明int *const q的定义中q的值是不能再变的,而q所指的内容是可以变的。
会在12和13行出现error,说明const *int p的定义中p的值是可以变的,而p所指的内容是不可以改变的。
相关阅读 更多 +