c语言中得const 限定符的用法
2014-08-18 09:59
363 查看
指针使用const 限定符
const限定符的作用就是告诉编译器这个被限定的变量是不可修改的。
可以使用const限定符来实现“最小权限原则”。
向函数传递的指针有4种: 1、char *sPtr 2、const char *sPtr 3、char *const sPtr
4、const char *const sPtr
2、const char *sPtr 可以指向相应类型的任何数据,但是它所指向的数据项是不可以修改的。这个指针可以接受数组中得一个实参,该函数将在不改变数组元素值得情况下处理每个元素。
int main(void)
{
int y;
f(&y);
return 0;
}
void (const int *sPtr)
{
*sPtr = 100;
}
这个是错误的,以为改变了数据
3、char *const sPtr 所指向的内存单元总是不变的,而存储在这个内存单元中的数据可以通过指针改写,简单点说,数组名默认就是这种指针。
int main(void)
{
int x;
int y;
int *const ptr = &x;
*ptr = 7;
ptr = &y;
return 0;
}
这个就是错误的,因为它改变了地址。
4、const char *const sPtr
这个指针只有最小的访问权限。这样的指针总是指向一个固定的内存单元,并且内存单元中的数据不可以修改。
在编写指针程序的时候 const 与 变量类型可以互换。
const限定符的作用就是告诉编译器这个被限定的变量是不可修改的。
可以使用const限定符来实现“最小权限原则”。
向函数传递的指针有4种: 1、char *sPtr 2、const char *sPtr 3、char *const sPtr
4、const char *const sPtr
2、const char *sPtr 可以指向相应类型的任何数据,但是它所指向的数据项是不可以修改的。这个指针可以接受数组中得一个实参,该函数将在不改变数组元素值得情况下处理每个元素。
int main(void)
{
int y;
f(&y);
return 0;
}
void (const int *sPtr)
{
*sPtr = 100;
}
这个是错误的,以为改变了数据
3、char *const sPtr 所指向的内存单元总是不变的,而存储在这个内存单元中的数据可以通过指针改写,简单点说,数组名默认就是这种指针。
int main(void)
{
int x;
int y;
int *const ptr = &x;
*ptr = 7;
ptr = &y;
return 0;
}
这个就是错误的,因为它改变了地址。
4、const char *const sPtr
这个指针只有最小的访问权限。这样的指针总是指向一个固定的内存单元,并且内存单元中的数据不可以修改。
在编写指针程序的时候 const 与 变量类型可以互换。
相关文章推荐
- C语言关键字const用法
- C语言中const、volatile、restrict等类型限定符的区别
- C语言中const的用法
- 《OOC》笔记(1)——C语言const、static和extern的用法
- C语言:const的用法
- const限定词的用法
- const限定修饰符用法总结(常量,指针,迭代器,函数参数,成员函数)
- 【每日一C之九】C语言const用法
- C语言中const的正确用法
- const限定修饰符用法总结(常量,指针,迭代器,函数参数,成员函数)
- c语言中的const的用法
- const限定修饰符用法总结(常量,指针,迭代器,函数参数,成员函数)
- 话说C语言const用法
- 每日一C之C语言const用法
- C语言中类型限定符(qualifier)之一const
- C语言中const常见用法
- const限定修饰符的各种用法
- C语言中const的用法
- C语言const用法详解(二)(转载)
- C语言--const的用法