const在C语言中有哪些用法?
3个回答
展开全部
const是一个C语言的关键字,它限定一个变量不允许被改变。使用const在一定程度上可以提高程序的安全性和可靠性。另外,在观看别人代码的时候,清晰理解const所起的作用,对理解对方的程序也有一些帮助。另外CONST在其他编程语言中也有出现,如C++、PHP5、C#.net、HC08
C。
(1)可以定义const常量,具有不可变性。
例如:const
int
Max=100;
Max++会产生错误;
(2)便于进行类型检查,使编译器对处理内容有更多了解,消除了一些隐患。
例如:
void
f(const
int
i)
{
.........}
编译器就会知道i是一个常量,不允许修改;
(3)可以避免意义模糊的数字出现,同样可以很方便地进行参数的调整和修改。
同宏定义一样,可以做到不变则已,一变都变!
如(1)中,如果想修改Max的内容,只需要:const
int
Max=you
want;即可!
(4)可以保护被修饰的东西,防止意外的修改,增强程序的健壮性。
还是上面的例子,如果在函数体内修改了i,编译器就会报错;
例如:
void
f(const
int
i)
{
i=10;//error!
}
C。
(1)可以定义const常量,具有不可变性。
例如:const
int
Max=100;
Max++会产生错误;
(2)便于进行类型检查,使编译器对处理内容有更多了解,消除了一些隐患。
例如:
void
f(const
int
i)
{
.........}
编译器就会知道i是一个常量,不允许修改;
(3)可以避免意义模糊的数字出现,同样可以很方便地进行参数的调整和修改。
同宏定义一样,可以做到不变则已,一变都变!
如(1)中,如果想修改Max的内容,只需要:const
int
Max=you
want;即可!
(4)可以保护被修饰的东西,防止意外的修改,增强程序的健壮性。
还是上面的例子,如果在函数体内修改了i,编译器就会报错;
例如:
void
f(const
int
i)
{
i=10;//error!
}
展开全部
1.
const 是constant 的缩写,“恒定不变”的意思。被const 修饰的东西都受到强制保护,可以预防意外的变动,能提高程序的健壮性。
2.
const可以修饰变量,函数的入参,函数的返回值
3.
static第一个作用:隐藏
当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。
4.
static的第二个作用是保持变量内容的持久。存储在静态数据区的变量会在程序刚开始运行时就完成初始化,也是唯一的一次初始化。
5.
static的第三个作用是默认初始化为0。其实全局变量也具备这一属性,因为全局变量也存储在静态数据区。在静态数据区,内存中所有的字节默认值都是0x00,某些时候这一特点可以减少程序员的工作量。
const 是constant 的缩写,“恒定不变”的意思。被const 修饰的东西都受到强制保护,可以预防意外的变动,能提高程序的健壮性。
2.
const可以修饰变量,函数的入参,函数的返回值
3.
static第一个作用:隐藏
当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。
4.
static的第二个作用是保持变量内容的持久。存储在静态数据区的变量会在程序刚开始运行时就完成初始化,也是唯一的一次初始化。
5.
static的第三个作用是默认初始化为0。其实全局变量也具备这一属性,因为全局变量也存储在静态数据区。在静态数据区,内存中所有的字节默认值都是0x00,某些时候这一特点可以减少程序员的工作量。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1、定义常量
用const可以定义各种类型的常量
例如:
const
int
MAX
=
100;
const
float
MIN
=
0;
并且编译时会进行类型检查,这是
其和#define的最大不同,当然它
也没有#define定义宏的功能。
2、用于防止向函数传递的参数被意外修改
例如:
int
fun(const
int
*p1,const
int
*p2);
这样定义这个函数,可以防止传递进来的指针所指向的内容被意外修改
因为如果你进行了修改,编译时会报错
用const可以定义各种类型的常量
例如:
const
int
MAX
=
100;
const
float
MIN
=
0;
并且编译时会进行类型检查,这是
其和#define的最大不同,当然它
也没有#define定义宏的功能。
2、用于防止向函数传递的参数被意外修改
例如:
int
fun(const
int
*p1,const
int
*p2);
这样定义这个函数,可以防止传递进来的指针所指向的内容被意外修改
因为如果你进行了修改,编译时会报错
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询