当前位置:文章写作网 >日记 >日记 >c语言之类型修饰符const

c语言之类型修饰符const

2008-06-23 17:24 作者:tshfang 阅读量:2940 推荐8次 | 我要投稿

c语言定义了控制如何访问修改变量的类型修饰符。

const定义的变量在程序中不能修改其值,可以初始化。编译器把这类变量放入只读的区域。

const int x=10;

变量x的值是10,程序不能修改。

const可以保护函数参数指向的对象,函数不能修改。形参定义成const指针的时候,函数没有办法修改传入指针的实际变量。

下面看两个例子

1、

int fun(void);

int fun1(void);

const int x=10;

int main(void)

{

int y=0;

y=fun();

y=fun1();

printf("y is %d",y);

getch();

return 0;

}

int fun(void)

{

int y=0;

y+=x;

}

int fun1(void)

{

x+=3;

}

编译器将在x+=3处提示错误:x是只读变量。

我们给y=fun1()和函数做为注释,程序输出为:

y is 10

2、

void printchar(const char * str);

int main(void)

{

char * s="i live you c";

printchar(s);

getch();

return 0;

}

void printchar(const char * str)

{

while(*str)

{

printf("%c",*str);

str++;

}

/* *str="sss"; */

}

程序输出:i love you c。

如果我们在函数中修改str所指向的值,程序将提示错误:

变量是只读的。

注:程序在dev c++5 测试通过。

其他人在看啥

    《c语言之类型修饰符const》的评论 (共 0 条)

    • Guest::ding
    • Guest::good