c语言char和const char区别

如题所述

char 和 const char 都是 char 型变量。
理论上来说,当变量未初始化,或未赋值时,你可以赋任意 值 给 它们。
一旦 赋值 后,const char 型变量的值 就 不允许 更改,不允许再赋新值。
而 char 型变量,你可以 随时 更新,愿赋新值 就可以赋新值。

但是,实际上,const char 型,只有在 初始化 时 才允许 赋 值。赋 后,不允许 再赋 值。
例如: const char cc = 'a';
所以 一旦 语句 中 出现 cc = 'b'; 甚至 不改变值 地 写 一句 cc = 'a'; 都算 语法错误。

char 型,无所谓,例如:
char c;
int i;
for (i='a';i<='z';i++) { c = i; printf("%c ",c);}
输出: a b c d e f g h i j k l m n o p q r s t u v w x y z
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-11-19
const这个关键字是代表常变量,如果没有const,那么相应的变量的值是可以改变的,有了const相应的变量的值不可以改变,如char c;const char d='a';那么c的值是可以改变的,我可以先让c='a',然后再让c='b',但是如果再让d='b'会报错,因为d是不可以改变的
第2个回答  2013-11-18
char定义的是变量,也就是变量的值可以改变,const char 定义的变量习惯性的叫常变量,也就是一旦赋值了就不能改变,一般当常量用,比#define定义的常量更好!
第3个回答  2013-11-18
char定义的字符变量是可以改变的;
const char定义的字符变量是不能改变。
第4个回答  2013-11-18
相似回答