C语言中什么是整型常量
展开全部
整形常量表达式指的是表达式中的操作数都是整数类型的, 这里的整数类型不仅仅是int类型, 还包括char, (unsigned) short, (unsigned) long等类型. 整型常量表达式中的操作数在编译时就已经确定了他的值, 因笑橘此只需要关注哪些值在编译时确定就可以了. 这包括以下几种情况:
1.
单个字符, 比如'A', 'a'
2.
单个整数数字以及由整数数字构成的表达式, 如123, 123 + 345
3.
枚举常量
4.
有sizeof 运算法返回的值, 如sizeof(int)
5.
NULL指针值
6.
地址常量. 如0X12345678, 以及地址常量加上一个偏移
在C90和C++中, 静态数组定义碰敏团时, 需要提供整形常量表达式. 如int A[10];因此, 你可以简单的试试用一个表达式去定义一个数组, 如果数组可以正常定义, 这表明这是一个整形表达式.
另外, 在C中, const关键字并不是代表其所修饰的变量是常量. 他仅仅代表const 修饰的变量是read-only的拿山, 无法对他进行修改. 这点与C++不同, C++中const关键字可以定义一个整形常量, 因此
const int size = 10;
int array[size]; /* C语言中, 编译不通过, C++中可以通过 */
1.
单个字符, 比如'A', 'a'
2.
单个整数数字以及由整数数字构成的表达式, 如123, 123 + 345
3.
枚举常量
4.
有sizeof 运算法返回的值, 如sizeof(int)
5.
NULL指针值
6.
地址常量. 如0X12345678, 以及地址常量加上一个偏移
在C90和C++中, 静态数组定义碰敏团时, 需要提供整形常量表达式. 如int A[10];因此, 你可以简单的试试用一个表达式去定义一个数组, 如果数组可以正常定义, 这表明这是一个整形表达式.
另外, 在C中, const关键字并不是代表其所修饰的变量是常量. 他仅仅代表const 修饰的变量是read-only的拿山, 无法对他进行修改. 这点与C++不同, C++中const关键字可以定义一个整形常量, 因此
const int size = 10;
int array[size]; /* C语言中, 编译不通过, C++中可以通过 */
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询