常数是指程序在执行过程中不得更改的固定值,常量与常规变量的处理方式相同,只不过其值在定义后无法修改。
整数
整数可以是十进制,八进制或十六进制常量。前缀指定基数或基数:十六进制为0x或0X,八进制为0。
212 /* 有效 */ 215u /* 有效 */ 0xFeeL /* 有效 */ 078 /* 无效:8 不是八进制数字 */ 032UU /* 无效:不能重复后缀 */
以下是各种类型的整数文字的其他示例-
85 /* decimal 十进制 */ 0213 /* octal 八进制*/ 0x4b /* hexadecimal 十六进制 */ 30 /* int 整数 */ 30u /* unsigned int 无符号整数 */ 30l /* long 长整数 */ 30ul /* unsigned long 无符号长整数 */
浮点数
浮点具有整数部分,小数点,小数部分和指数部分。您可以用十进制或指数形式表示浮点文字。
3.14159 /* 有效 */ 314159E-5L /* 有效 */ 510E /* 无效:不完整的指数 */ 210f /* 无效:没有小数或指数 */ .e55 /* 无效:缺少整数或分数 */
字符
字符文字用单引号引起来,如," x"可以存储在 char 类型的简单变量中。
转义序列 | 含义 |
---|---|
\\ | \ |
\' | ' |
\" | " |
\? | ? |
\a | 警报或响铃 |
\b | 空格 |
\f | 换页 |
\n | 换行符 |
\r | 回车 |
\t | "水平"标签 |
\v | "垂直"标签 |
\ooo | 一到三位数的数字 |
\xhh | 十六进制的一位或多位数字 |
以下是显示一些转义序列字符的示例-
#include <stdio.h> int main() { printf("Hello\tLearnfk\n\n"); return 0; }
编译并执行上述代码后,将产生以下输出-
Hello Learnfk
字符串
字符串文字或常量用双引号""括起来。字符串包含与字符文字相似的字符:纯字符,转义序列和通用字符。
"hello, dear" "hello,\ dear" "hello, " "d" "ear"
定义常量
在C中有两种简单的方法来定义常量-
使用 #define 预处理程序。
使用 const 关键字。
#define预处理程序
下面给出的是使用#define预处理器定义常量的形式-
#define identifier value
以下示例对其进行了详细说明-
#include <stdio.h> #define LENGTH 10 #define WIDTH 5 #define NEWLINE '\n' int main() { int area; area=LENGTH * WIDTH; printf("value of area : %d", area); printf("%c", NEWLINE); return 0; }
编译并执行上述代码后,将产生以下输出-
value of area : 50
const关键字
您可以使用 const 前缀声明具有特定类型的常量,如下所示-
const type variable=value;
以下示例对其进行了详细说明-
#include <stdio.h> int main() { const int LENGTH=10; const int WIDTH=5; const char NEWLINE='\n'; int area; area=LENGTH * WIDTH; printf("value of area : %d", area); printf("%c", NEWLINE); return 0; }
编译并执行上述代码后,将产生以下输出-
value of area : 50
参考链接
https://www.learnfk.com/c-programming/c-constants.html
标签:教程,const,常量,area,int,无涯,value,C语言,define From: https://blog.51cto.com/u_14033984/8087589